Removes all names from local scope.
Removes all names from local scope. Names from a parent resolver are not affected.
Checks, if the resolver will accept a name.
Checks, if the resolver will accept a name.
Variable name to look up.
True, if Resolver will provide a value for the name, otherwise false.
Creates an independent copy of this scope.
Creates an independent copy of this scope.
A See context that can be used independent from the original one, e.g within a different thread. It will not contain any references to its source, but still uses the same resolver, if any.
Creates a new See context that may access the bindings of its parent.
Creates a new See context that may access the bindings of its parent. Changing any non-local definition will also affect the parent context.
A See context that is a subcontext of this one.
Evaluates a pre-parsed node tree.
Evaluates a pre-parsed node tree.
Node returned by parse().
Some kind of See result. For use within Java, you will probably want to call see.IResult#toJava upon it.
In most cases, it is simpler to use one of of the convenience methods instead. However, any result may be assigned to a Sel variable using see.Resolver#set, even if no Java equivalent exists.
Retrieves value for a name.
Retrieves value for a name.
Variable name to look up
Value bound to that name. If the implementation cannot provide a value, it should return null.
Retrieves a set of locally defined names.
Retrieves a set of locally defined names.
Set of names that are defined within local scope. The set may be empty.
Retrieves the parent resolver.
Retrieves the parent resolver.
Current parent resolver, may be null.
Parses the given expression into node tree.
Parses the given expression into node tree.
Expression to parse.
Node tree for evaluation.
if expression is not a valid Sel expression.
Associates a value with a name.
Associates a value with a name.
Variable name to (re-)define
Value to associate with the name. An implementation is not required to allow value setting. If it doesn't, it should silently ignore the request.
Convenience method for
Convenience method for
setLocal(name, new Boolean(v))
Convenience method for
Convenience method for
setLocal(name, new Double(v))
Convenience method for
Convenience method for
setLocal(name, new Long(v))
Defines a name within current resolver.
Defines a name within current resolver. The name association will be created within local scope, even if the parent resolver contains a definition for that name.
Variable name to (re-)define
Value to associate with the name. May be null, in which case the name is still regarded as defined, but will cause an evaluation error, if it is dereferenced.
Sets the parent resolver for the binding.
Sets the parent resolver for the binding. Any name reference that cannot be resolved locally will be forwarded to the parent resolver.
Resolver to use as parent. May be null.
Parses the given expression and evaluates the resulting node tree.
Parses the given expression and evaluates the resulting node tree. This is just a conveninence method for
eval(parse(expression))
Evaluates node and converts result into boolean.
Evaluates node and converts result into double.
Evaluates node and converts result into long.
Evaluates node just converting the result into its Java representation.
Evaluates node just converting the result into its Java representation. This method must be called, if a non-primitive result is expected. It will still throw an EvalException, if evaluation itself fails, but not for any conversion failures.
Evaluates node and converts result into String.
Convenience method for
Convenience method for
set(name, new Boolean(v))
Convenience method for
Convenience method for
set(name, new Double(v))
Convenience method for
Convenience method for
set(name, new Long(v))
The See main class.
This one must be created by embedding applications.