public abstract class SOperator<T> extends Operator<CharSequence,T>
Operator for string expressions.
TODO: create GenericOperator reading reflective operations from xml.KEY_BEGIN, KEY_BETWEEN, KEY_CONCAT, KEY_EMPTY, KEY_END, KEY_HIGH_OPERATION, KEY_OPERAND, KEY_OPERATION, KEY_RESULT, KEY_TERM, KEY_TERM_ENCLOSED| Constructor and Description |
|---|
SOperator()
constructor
|
SOperator(Class<? extends CharSequence> inputClass,
IConverter<CharSequence,T> converter,
Map<CharSequence,T> values)
constructor
|
| Modifier and Type | Method and Description |
|---|---|
CharSequence |
concat(Object... input)
concatenates given elements of type INPUT
|
protected Map<String,CharSequence> |
createSyntax()
default implementation. please override
|
protected void |
createTermSyntax_NEW_ALTERNIVE13062015() |
protected void |
createTermSyntax()
defines the syntax of a term with given set of operators
|
CharSequence |
extract(CharSequence source,
CharSequence match,
CharSequence replacement)
extracts the given part from source and replaces it with replacement
|
void |
replace(CharSequence src,
CharSequence expression,
CharSequence replace)
replace
|
CharSequence |
subElement(CharSequence src,
CharSequence begin,
CharSequence end,
boolean last)
searches for the given block starting with begin and ending with end. if last is true, the last block will be searched.
|
CharSequence |
subEnclosing(CharSequence src,
CharSequence begin,
CharSequence end)
searches in src for a block starting (excluding) from first begin and ending with last end.
|
CharSequence |
trim(CharSequence totrim)
right and left trim
|
CharSequence |
unwrap(CharSequence src)
see
Parser.wrap(Object). |
CharSequence |
wrap(CharSequence src)
should be overridden if you need a transformation.
|
addOperation, addValue, createOperations, encloseInBrackets, eval, eval, getValue, getValues, newOperand, operate, reset, resultEstablished, syntax, toStringpublic SOperator()
public SOperator(Class<? extends CharSequence> inputClass, IConverter<CharSequence,T> converter, Map<CharSequence,T> values)
inputClass - converter - values - protected Map<String,CharSequence> createSyntax()
createSyntax in class Operator<CharSequence,T>Operator.syntax. see Operator.syntax(String).protected void createTermSyntax()
OperatorcreateTermSyntax in class Operator<CharSequence,T>protected void createTermSyntax_NEW_ALTERNIVE13062015()
public void replace(CharSequence src, CharSequence expression, CharSequence replace)
IParserpublic CharSequence extract(CharSequence source, CharSequence match, CharSequence replacement)
IParserpublic CharSequence subElement(CharSequence src, CharSequence begin, CharSequence end, boolean last)
IParsersrc - sourcebegin - block startend - block endlast - whether to search from the end.public CharSequence subEnclosing(CharSequence src, CharSequence begin, CharSequence end)
IParsersrc - sourcebegin - block startend - block endpublic CharSequence concat(Object... input)
IParserinput - input array to concatenate. the array is of type Object as a technical workaround on auto-creating
an INPUT[].public CharSequence wrap(CharSequence src)
Parserwrap in interface IParser<CharSequence>wrap in class Parser<CharSequence>src - source to be transformed/wrappedpublic CharSequence unwrap(CharSequence src)
ParserParser.wrap(Object).unwrap in interface IParser<CharSequence>unwrap in class Parser<CharSequence>src - source to be re-transformedpublic CharSequence trim(CharSequence totrim)
IParserCopyright © 2012–2022. All rights reserved.