ListRslNode
, RslNode
public abstract class AbstractRslNode extends Object
Modifier and Type | Field | Description |
---|---|---|
protected int |
_operator |
|
protected List |
_specifications |
|
static int |
AND |
|
static int |
MULTI |
|
static int |
OR |
Constructor | Description |
---|---|
AbstractRslNode() |
|
AbstractRslNode(int operator) |
Modifier and Type | Method | Description |
---|---|---|
boolean |
add(AbstractRslNode node) |
Adds a rsl parse tree to this node.
|
abstract boolean |
add(Bindings bindings) |
|
abstract boolean |
add(NameOpValue relations) |
|
static String |
canonicalize(String str) |
Canonicalizes a string by removing any underscores and
moving all characters to lowercase.
|
AbstractRslNode |
evaluate() |
Evalutes the rsl tree.
|
abstract AbstractRslNode |
evaluate(Map symbolTable) |
Evalutes the rsl tree against the specified symbol table.
|
abstract Bindings |
getBindings(String attribute) |
Returns the variable definitions associated wit the given
attribute.
|
int |
getOperator() |
Returns the node operator.
|
String |
getOperatorAsString() |
Returns the operator as a string.
|
static String |
getOperatorAsString(int op) |
Returns a string represention of a given operator.
|
abstract NameOpValue |
getParam(String attribute) |
Returns the relation associated with the given attribute.
|
List |
getSpecifications() |
Returns the list of sub-specifications.
|
void |
merge(AbstractRslNode inNode) |
Merges the specified node with the current node.
|
void |
mergeTo(AbstractRslNode dstNode) |
|
abstract Bindings |
removeBindings(String attribute) |
Removes a bindings list for the specified attribute.
|
abstract NameOpValue |
removeParam(String attribute) |
Removes a relation for the specified attribute.
|
boolean |
removeSpecification(AbstractRslNode node) |
Removes a specific sub-specification tree from the
sub-specification list.
|
void |
setOperator(int oper) |
Sets the operator.
|
String |
toRSL(boolean explicitConcat) |
Returns a RSL representation of this relation.
|
abstract void |
toRSL(StringBuffer buf,
boolean explicitConcat) |
Produces a RSL representation of node.
|
String |
toString() |
public static final int AND
public static final int OR
public static final int MULTI
protected int _operator
protected List _specifications
public AbstractRslNode()
public AbstractRslNode(int operator)
public abstract boolean add(Bindings bindings)
public abstract boolean add(NameOpValue relations)
public boolean add(AbstractRslNode node)
node
- the rsl parse tree to add.public abstract NameOpValue getParam(String attribute)
attribute
- the attribute of the relation.public abstract Bindings getBindings(String attribute)
attribute
- the attribute of the variable deinitions.public boolean removeSpecification(AbstractRslNode node)
node
- node to remove.public abstract Bindings removeBindings(String attribute)
attribute
- the attribute name for the
bindings.public abstract NameOpValue removeParam(String attribute)
attribute
- the attribute name for the
relation to remove.public void merge(AbstractRslNode inNode)
inNode
- the source parse tree.public void mergeTo(AbstractRslNode dstNode)
public List getSpecifications()
public int getOperator()
public void setOperator(int oper)
oper
- the operator.public String getOperatorAsString()
public static String getOperatorAsString(int op)
op
- the operator.public AbstractRslNode evaluate() throws RslEvaluationException
RslEvaluationException
- If an error occured during
rsl evaluation.public abstract AbstractRslNode evaluate(Map symbolTable) throws RslEvaluationException
symbolTable
- the symbol table to evalute variables against.RslEvaluationException
- If an error occured during
rsl evaluation.public String toRSL(boolean explicitConcat)
explicitConcat
- if true explicit concatination will
be used in RSL strings.public abstract void toRSL(StringBuffer buf, boolean explicitConcat)
buf
- buffer to add the RSL representation to.explicitConcat
- if true explicit concatination will
be used in RSL strings.Copyright © 2018. All rights reserved.