jason.stdlib
Class sort
java.lang.Object
jason.asSemantics.DefaultInternalAction
jason.stdlib.sort
- All Implemented Interfaces:
- InternalAction, java.io.Serializable
public class sort
- extends DefaultInternalAction
Internal action: .sort
.
Description: sorts a list of terms. The "natural" order for each type of
terms is used. Between different types of terms, the following order is
used:
numbers < strings < lists < literals (by negation, arity, functor, terms, annotations) < variables
Parameters:
- + unordered list (list): the list the be sorted.
- +/- ordered list (list): the sorted list.
Examples:
-
.sort([c,a,b],X)
: X
unifies with
[a,b,c]
.
-
.sort([C,b(4),A,4,b(1,1),"x",[],[c],[a],[b,c],[a,b],~a(3),a(e,f),b,a(3),b(3),a(10)[30],a(10)[5],a,a(d,e)],X)
:
X
unifies with
[4,"x",[],[a],[c],[a,b],[b,c],a,b,a(3),a(10)[5],a(10)[30],b(3),b(4),a(d,e),a(e,f),b(1,1),~a(3),A,C]
.
-
.sort([3,2,5],[2,3,5])
: true.
-
.sort([3,2,5],[a,b,c])
: false.
- See Also:
concat
,
delete
,
length
,
member
,
nth
,
max
,
min
,
reverse
,
difference
,
intersection
,
union
,
Serialized Form
Constructor Summary |
sort()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
sort
public sort()
create
public static InternalAction create()
getMinArgs
public int getMinArgs()
- Overrides:
getMinArgs
in class DefaultInternalAction
getMaxArgs
public int getMaxArgs()
- Overrides:
getMaxArgs
in class DefaultInternalAction
checkArguments
protected void checkArguments(Term[] args)
throws JasonException
- Overrides:
checkArguments
in class DefaultInternalAction
- Throws:
JasonException
execute
public java.lang.Object execute(TransitionSystem ts,
Unifier un,
Term[] args)
throws java.lang.Exception
- Description copied from interface:
InternalAction
- Executes the internal action. It should return a Boolean or
an Iterator. A true boolean return means that the IA was
successfully executed. An Iterator result means that there is
more than one answer for this IA (e.g. see member internal action).
- Specified by:
execute
in interface InternalAction
- Overrides:
execute
in class DefaultInternalAction
- Throws:
java.lang.Exception