org.objectweb.medor.filter.lib
Class Substring
java.lang.Object
|
+--org.objectweb.medor.filter.lib.BasicThreeArgsOperator
|
+--org.objectweb.medor.filter.lib.Substring
- All Implemented Interfaces:
- java.lang.Cloneable, Cloneable, Expression, Operator, ThreeArgsOperator
- public class Substring
- extends BasicThreeArgsOperator
- implements ThreeArgsOperator
Operator representing the substring extraction given a String, a first
integer to start from and a second integer indicating the length of the
required substring.
Fields inherited from interface org.objectweb.medor.filter.api.Operator |
ABS, AND, AVG, BITWIZE, CONCAT, CONDAND, CONDOR, COUNT, DIV, EQUAL, FIRSTLOCATE, GREATER, GREATEREQUAL, IN, INDEXEDLOCATE, LENGTH, LOWER, LOWEREQUAL, MAX, MEMBEROF, MIN, MINUS, MOD, MULT, NAV, NOT, NOTEQUAL, NOTMEMBEROF, OR, PLUS, SQRT, SUBSTRING, SUM, UMINUS |
Method Summary |
void |
compileExpression()
Checks the semantic integrity of an expression. |
void |
evaluate(ParameterOperand[] pos,
Tuple t)
It evaluates the expression tree and puts the result into the operand
result. |
java.lang.String |
evaluate(java.lang.String op,
int start,
int length)
|
java.lang.String |
getOperatorString()
Returns the String representing the operator in Java |
Methods inherited from class org.objectweb.medor.filter.lib.BasicThreeArgsOperator |
clone, getExpression, getFirstExpression, getOperandNumber, getResult, getSecondExpression, getThirdExpression, getType, isCompiled, setExpression, setFirstExpression, setSecondExpression, setThirdExpression |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.objectweb.medor.api.Cloneable |
clone |
Substring
public Substring(Expression inputString,
Expression start,
Expression length)
- Constructs the operator
- Parameters:
inputString
- is the String from which to extract the substingstart
- is the index of the first character in the String to start
with. It is expected that 1 is the first character in the string (and
not 0 like in Java).length
- is the size of the requested substring
Substring
public Substring()
evaluate
public void evaluate(ParameterOperand[] pos,
Tuple t)
throws MedorException,
java.lang.IllegalStateException
- Description copied from interface:
Expression
- It evaluates the expression tree and puts the result into the operand
result.
- Specified by:
evaluate
in interface Expression
- Specified by:
evaluate
in class BasicThreeArgsOperator
- Parameters:
pos
- a list of ParameterOperandt
- Tuple
- Throws:
java.lang.IllegalStateException
- if this expression is not
compiled.
MedorException
- if evaluation error
compileExpression
public void compileExpression()
throws TypingException,
MalformedExpressionException
- Description copied from interface:
Expression
- Checks the semantic integrity of an expression.
It checks that all types are compatible and prepare the expression to be
evaluable.It also creates buffers where stores the result. Notes that
when evaluating there is no creation of new objects. This method change
the state of this expression object, it will be evaluable and not
modifiable.
- Specified by:
compileExpression
in interface Expression
- Throws:
MalformedExpressionException
- if syntax error
TypingException
- when incompatible types error
occures.
evaluate
public java.lang.String evaluate(java.lang.String op,
int start,
int length)
getOperatorString
public java.lang.String getOperatorString()
- Description copied from interface:
Operator
- Returns the String representing the operator in Java
- Specified by:
getOperatorString
in interface Operator
- Returns:
- the String representing the operator in Java