Class LexicalFrame
java.lang.Object
org.apache.commons.jexl3.internal.LexicalScope
org.apache.commons.jexl3.internal.LexicalFrame
The set of valued symbols defined in a lexical frame.
The symbol identifiers are determined by the functional scope.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Frame
The script frame.protected final LexicalFrame
Previous frame.The stack of values in the lexical frame.Fields inherited from class org.apache.commons.jexl3.internal.LexicalScope
BITS_PER_LONG, BITS_PER_SYMBOL, count, moreSymbols, SYMBOL_MASK, SYMBOL_SHIFT, symbols
-
Constructor Summary
ConstructorsConstructorDescriptionLexicalFrame
(Frame scriptf, LexicalFrame outerf) Lexical frame ctor.LexicalFrame
(LexicalFrame src) Copy ctor. -
Method Summary
Modifier and TypeMethodDescriptionDefine the arguments.boolean
defineSymbol
(int symbol, boolean capture) Defines a symbol.pop()
Pops back values and lexical frame.Methods inherited from class org.apache.commons.jexl3.internal.LexicalScope
addConstant, addSymbol, clearSymbols, getSymbolCount, hasSymbol, isConstant
-
Field Details
-
frame
The script frame. -
previous
Previous frame. -
stack
The stack of values in the lexical frame.
-
-
Constructor Details
-
LexicalFrame
Lexical frame ctor.- Parameters:
scriptf
- the script frameouterf
- the previous lexical frame
-
LexicalFrame
Copy ctor.- Parameters:
src
- the frame to copy
-
-
Method Details
-
defineArgs
Define the arguments.- Returns:
- this frame
-
defineSymbol
public boolean defineSymbol(int symbol, boolean capture) Defines a symbol.- Parameters:
symbol
- the symbol to definecapture
- whether this redefines a captured symbol- Returns:
- true if symbol is defined, false otherwise
-
pop
Pops back values and lexical frame.- Returns:
- the previous frame
-