public class ObjectFieldExpr extends AbstractVarExpr
Modifier and Type | Field and Description |
---|---|
protected StringValue |
_name |
protected Expr |
_objExpr |
COMPILE_ARG_MAX, NULL_ARGS
Constructor and Description |
---|
ObjectFieldExpr(Expr objExpr,
StringValue name) |
ObjectFieldExpr(Location location,
Expr objExpr,
StringValue name) |
Modifier and Type | Method and Description |
---|---|
Expr |
createCall(QuercusParser parser,
Location location,
java.util.ArrayList<Expr> args)
Creates a function call expression
|
Value |
eval(Env env)
Evaluates the expression.
|
Value |
evalArg(Env env,
boolean isTop)
Evaluates the expression.
|
Value |
evalArray(Env env)
Evaluates the expression, creating an array if the field is unset.
|
Value |
evalAssignRef(Env env,
Value value)
Evaluates the expression.
|
Value |
evalDirty(Env env)
Evaluates the expression, with the object expected to be modified,
e.g.
|
boolean |
evalIsset(Env env)
Evaluates the expression as an isset() statement.
|
Value |
evalObject(Env env)
Evaluates the expression, creating an object if the field is unset.
|
Value |
evalPostIncrement(Env env,
int incr)
Handles post increments.
|
Value |
evalPreIncrement(Env env,
int incr)
Handles post increments.
|
void |
evalUnset(Env env)
Evaluates the expression.
|
void |
evalUnsetArray(Env env,
Expr indexExpr)
Evaluates the expression as an array index unset
|
Var |
evalVar(Env env)
Evaluates the expression.
|
java.lang.String |
toString() |
assign, createAssign, createAssignRef, createCopy, createRef, createUnset, evalAssignValue, evalCopy, evalRef, isVar
canRead, createAssignFrom, createClassConst, createClassConst, createClassField, createClassField, createDeref, createFieldGet, createFieldGet, createIsset, equals, evalArgs, evalArrayAssign, evalArrayAssignRef, evalArrayAssignRef, evalArrayAssignTail, evalAssignRef, evalAssignValue, evalBoolean, evalChar, evalConstant, evalConstantPrefix, evalConstantSuffix, evalDouble, evalEmpty, evalIssetValue, evalLong, evalQuercusClass, evalString, evalStringValue, evalTop, evalValue, getFileName, getFunctionLocation, getLine, getLocation, getLocationLine, isArray, isAssign, isBoolean, isConstant, isDouble, isFalse, isLiteral, isLong, isNumber, isRef, isString, isTrue, print
protected final Expr _objExpr
protected final StringValue _name
public ObjectFieldExpr(Location location, Expr objExpr, StringValue name)
public ObjectFieldExpr(Expr objExpr, StringValue name)
public Expr createCall(QuercusParser parser, Location location, java.util.ArrayList<Expr> args) throws java.io.IOException
createCall
in class Expr
java.io.IOException
public Value eval(Env env)
eval
in class AbstractVarExpr
env
- the calling environment.public Var evalVar(Env env)
evalVar
in class AbstractVarExpr
env
- the calling environment.public Value evalArg(Env env, boolean isTop)
evalArg
in class AbstractVarExpr
env
- the calling environment.public Value evalDirty(Env env)
Expr
public Value evalAssignRef(Env env, Value value)
evalAssignRef
in class AbstractVarExpr
env
- the calling environment.public Value evalPostIncrement(Env env, int incr)
evalPostIncrement
in class Expr
public Value evalPreIncrement(Env env, int incr)
evalPreIncrement
in class Expr
public Value evalArray(Env env)
evalArray
in class AbstractVarExpr
env
- the calling environment.public Value evalObject(Env env)
evalObject
in class AbstractVarExpr
env
- the calling environment.public void evalUnset(Env env)
evalUnset
in class AbstractVarExpr
env
- the calling environment.public void evalUnsetArray(Env env, Expr indexExpr)
evalUnsetArray
in class Expr