jason.stdlib
Class findall

Package class diagram package findall
java.lang.Object
  extended by jason.asSemantics.DefaultInternalAction
      extended by jason.stdlib.findall
All Implemented Interfaces:
InternalAction, java.io.Serializable

public class findall
extends DefaultInternalAction

Internal action: .findall(Var,Literal,List).

Description: builds a List of all instantiations of term which make query a logical consequence of the agent's BB. Unlike in Prolog, the second argument cannot be a conjunction.

Parameters:

Examples assuming the BB is currently {a(30),a(20),b(1,2),b(3,4),b(5,6)}:

See Also:
count, setof, Serialized Form

Constructor Summary
findall()
           
 
Method Summary
protected  void checkArguments(Term[] args)
           
 java.lang.Object execute(TransitionSystem ts, Unifier un, Term[] args)
          Executes the internal action.
 int getMaxArgs()
           
 int getMinArgs()
           
 Term[] prepareArguments(Literal body, Unifier un)
          Prepare body's terms to be used in 'execute', normally it consist of cloning and applying each term
 
Methods inherited from class jason.asSemantics.DefaultInternalAction
canBeUsedInContext, suspendIntention
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

findall

public findall()
Method Detail

getMinArgs

public int getMinArgs()
Overrides:
getMinArgs in class DefaultInternalAction

getMaxArgs

public int getMaxArgs()
Overrides:
getMaxArgs in class DefaultInternalAction

prepareArguments

public Term[] prepareArguments(Literal body,
                               Unifier un)
Description copied from interface: InternalAction
Prepare body's terms to be used in 'execute', normally it consist of cloning and applying each term

Specified by:
prepareArguments in interface InternalAction
Overrides:
prepareArguments 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