|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Object condor.classad.Expr condor.classad.FuncCall
A function call. An internal (non-leaf) node of an expression tree representing a function name and list of arguments.
Expr
Field Summary | |
List |
args
The raw parameters to the function. |
AttrName |
func
The name of the function as supplied in the original source. |
Fields inherited from class condor.classad.Expr |
ABSOLUTE_TIME, AND, ATTRIBUTE, BIT_COMPLEMENT, BITAND, BITOR, BITXOR, BOOLEAN, CALL, COND, dblevel, DIFFERENT, DIV, EQUAL, ERROR, GREATER, GREATER_EQ, INTEGER, LEFT_SHIFT, LESS, LESS_EQ, LIST, MAXPREC, MINUS, MOD, NOT, NOT_EQUAL, OP, opName, opNameXML, OR, PLUS, RECORD, RELATIVE_TIME, RIGHT_SHIFT, SAME, SELECTION, STRING, SUBSCRIPT, TIMES, type, UMINUS, UNDEFINED, UPLUS, URIGHT_SHIFT |
Method Summary | |
protected Expr |
eval1(Env env)
Evaluate this Expr. |
static Expr |
getInstance(AttrName func,
List params)
Create a function node from a name and a list of paramters. |
(package private) static boolean |
loadJavaLibrary(String className)
Loads a library of externally defined Java functions. |
int |
prec()
The precedence of the operator in this expression node. |
boolean |
sameAs(Expr other)
Compare this Expr to another expression to check for "deep structural equality". |
StringBuffer |
toString(StringBuffer sb)
Convert this Expr to a string, appending the result to the end of "sb". |
Methods inherited from class condor.classad.Expr |
db, db, eval, eval, intValue, is, isConstant, isTrue, realValue, selectExpr, stringValue, subExpr, toString, typeName |
Methods inherited from class Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
public final AttrName func
public final List args
Method Detail |
public static Expr getInstance(AttrName func, List params)
func
- the name of the function (original case).params
- the parameters supplied.
public StringBuffer toString(StringBuffer sb)
name '(' [ arg [ ',' arg ]* ')'
with no extra spaces.
toString
in class Expr
sb
- a place to put the result.
ClassAdWriter
public boolean sameAs(Expr other)
sameAs
in class Expr
other
- the other expression
protected Expr eval1(Env env)
Expr.eval()
.
By default, all functions are "strict" in all their arguments. That is,
all arguments are evaluated before the function is called, and if any
argument evaluates to an undefined or error Constant, the value of the
call is undefined or error, with error taking precendence over
undefined. In this case, the message is taken from the first argument
that evaluates to an error or undefined.
Functions can be flagged as "non-strict", in which case all evaluation
of arguments is inhibited, and the function implementation is
responsible for evaluating arguments as necessary.
We assume at this time that there are no built-in strict functions that take a RecordExpr or ListExpr as an argument.
eval1
in class Expr
env
- an environment used to evaluate the operands. It is cleared
to the null environment before return.
public int prec()
prec
in class Expr
ClassAdWriter.MINIMAL_PARENTHESES
static boolean loadJavaLibrary(String className)
className
- the fully qualified name of the class (e.g.
condor.classad.Builtin)
ClassAd.loadJavaLibrary(java.lang.String)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |