Class Eval
- java.lang.Object
-
- org.protelis.lang.interpreter.impl.AbstractProtelisAST<T>
-
- org.protelis.lang.interpreter.impl.AbstractPersistedTree<org.apache.commons.lang3.tuple.Pair<java.lang.String,ProtelisProgram>,java.lang.Object>
-
- org.protelis.lang.interpreter.impl.Eval
-
- All Implemented Interfaces:
java.io.Serializable
,ProtelisAST<java.lang.Object>
,WithBytecode
public final class Eval extends AbstractPersistedTree<org.apache.commons.lang3.tuple.Pair<java.lang.String,ProtelisProgram>,java.lang.Object>
Evaluate a Protelis sub-program.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description Eval(Metadata metadata, ProtelisAST<?> arg)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
evaluate(ExecutionContext context)
Evaluates this AST node.Bytecode
getBytecode()
java.lang.String
toString()
-
Methods inherited from class org.protelis.lang.interpreter.impl.AbstractPersistedTree
loadState, saveState
-
Methods inherited from class org.protelis.lang.interpreter.impl.AbstractProtelisAST
branchesToString, branchesToString, eval, forEach, forEachWithIndex, getBranch, getBranches, getBranchesNumber, getMetadata, getName, isNullable, stringFor
-
-
-
-
Constructor Detail
-
Eval
public Eval(Metadata metadata, ProtelisAST<?> arg)
- Parameters:
metadata
- AMetadata
object containing information about the code that generated this AST node.arg
- argument whose annotation will be used as a string representing a program
-
-
Method Detail
-
evaluate
public java.lang.Object evaluate(ExecutionContext context)
Description copied from class:AbstractProtelisAST
Evaluates this AST node. This method can throw any exception,AbstractProtelisAST
takes care of storing the necessary metadata.- Specified by:
evaluate
in classAbstractProtelisAST<java.lang.Object>
- Parameters:
context
- the execution context- Returns:
- the result of the evaluation
-
toString
public java.lang.String toString()
Description copied from class:AbstractPersistedTree
- Specified by:
toString
in classAbstractPersistedTree<org.apache.commons.lang3.tuple.Pair<java.lang.String,ProtelisProgram>,java.lang.Object>
-
-