Algernon Software

org.algernon.aam.opcode
Class Eval

java.lang.Object
  extended byorg.jatha.dynatype.StandardLispValue
      extended byorg.algernon.aam.Opcode
          extended byorg.algernon.aam.opcode.Eval
All Implemented Interfaces:
Comparable, LispValue

public class Eval
extends Opcode

This class represents an Eval Opcode in the AAM. The system should only need to make one instance of this.


Field Summary
 
Fields inherited from class org.algernon.aam.Opcode
f_algy, m_name, m_numberOfArguments
 
Fields inherited from class org.jatha.dynatype.StandardLispValue
f_lisp
 
Constructor Summary
Eval(Algernon algy, String name, int numArgs)
          Create a new AAM :EVAL Opcode.
 
Method Summary
 void execute(Processor processor, AlgernonKBSet kbSet)
          Executes the :EVAL opcode.
 
Methods inherited from class org.algernon.aam.Opcode
argumentToClass, argumentToClass, argumentToFacet, argumentToFacet, argumentToFrame, argumentToFrame, argumentToInstance, argumentToInstance, argumentToInstance, argumentToRelation, argumentToRelation, getName, getNumberOfArguments, setName, setNumberOfArguments, toString
 
Methods inherited from class org.jatha.dynatype.StandardLispValue
abs, acos, add, adjustSpecialCount, append, apply, apropos_print, asin, assoc, atan, atan2, atom, basic_atom, basic_bignump, basic_consp, basic_constantp, basic_floatp, basic_foreignp, basic_functionp, basic_integerp, basic_keywordp, basic_length, basic_listp, basic_macrop, basic_null, basic_numberp, basic_stringp, basic_symbolp, bignump, boundp, butlast, car, cdr, ceiling, characterp, clrhash, compareTo, concatenate, consp, constantp, contains, copy_list, copy, cos, cot, csc, degreesToRadians, divide, eighth, elt, elt, eq, eql, equal, equalNumeric, factorial, fboundp, fifth, first, floatp, floor, fourth, funcall, functionp, get_specialCount, gethash, gethash, getLisp, greaterThan, greaterThanOrEqual, hash_table_count, hash_table_rehash_size, hash_table_rehash_threshold, hash_table_size, hash_table_test, hashtablep, integerp, internal_getName, internal_prin1_as_cdr, internal_prin1, internal_princ_as_cdr, internal_princ, internal_print_as_cdr, internal_print, iterator, keywordp, last, length, lessThan, lessThanOrEqual, lisp_null, list, listp, max, member, min, multiply, nconc, negate, neql, ninth, nreverse, nstringCapitalize, nstringDowncase, nstringUpcase, numberp, pop, position, prin1, princ, print, push, radiansToDegrees, rassoc, reciprocal, remhash, remove, rest, reverse, rplaca, rplacd, sec, second, set_special, setf_gethash, setf_symbol_function, setf_symbol_plist, setf_symbol_value, setLisp, setPackage, setq, seventh, sin, sixth, specialP, sqrt, string, stringCapitalize, stringDowncase, stringEndsWith, stringEq, stringEqual, stringGreaterP, stringGreaterThan, stringGreaterThanOrEqual, stringLeftTrim, stringLeftTrim, stringLessP, stringLessThan, stringLessThanOrEqual, stringNeq, stringNotGreaterP, stringNotLessP, stringp, stringRightTrim, stringRightTrim, stringStartsWith, stringTrim, stringTrim, stringUpcase, subst, substring, substring, subtract, symbol_function, symbol_name, symbol_package, symbol_plist, symbol_value, symbolp, tan, tenth, third, toCollection, toJava, toJava, toString, toStringAsCdr_internal, toStringAsCdr, toStringShort, toStringShort, toStringSimple, type_of, typep, zerop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Eval

public Eval(Algernon algy,
            String name,
            int numArgs)
Create a new AAM :EVAL Opcode.

Method Detail

execute

public void execute(Processor processor,
                    AlgernonKBSet kbSet)
             throws AlgernonDataException
Executes the :EVAL opcode. :EVAL is like :TEST except that it doesn't care what the result is. It always succeeds.
 Examples:
   (:EVAL (:JAVA (org.algernonx.MyFactory.lengthTest ?sequence)))
   (:EVAL (:LISP (> (length ?sequence) 15)))
   (:EVAL (:SHELL (sequenceTest.pl ?sequence)))
 
Executes the current form in the specified lower-level language. Don't need :BRANCH :SELECT after this opcode.

Overrides:
execute in class Opcode
Throws:
AlgernonDataException

Algernon Software