Grammar ID: MRULES-BRE
Grammar Locale: EN
Grammar comments: //
Number of possible roots: 1
Number of lexers: 131
RULEEXECUTIONSET
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.set.MRuleExecutionSet.
Description: Declares the rule set.
Tags: Ruleset, Executables
This lexer can only be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "ruleset" (case insensitive)
Optional and non-unique content block: One of these sub Content Blocks
Optional and non-unique content block: From Lexer ID classImport
Optional and non-unique content block: From Lexer ID packageImport
Optional and non-unique content block: One of these sub Content Blocks
Optional and unique content block: From Lexer ID name
Optional and unique content block: From Lexer ID contextFactory
Optional and unique content block: From Lexer ID stopAtFirstValidatedCondition
Optional and non-unique content block: From Lexer ID setProperty
Mandatory and non-unique content block: One of these sub Content Blocks
Optional and non-unique content block: From Lexer return type interface com.massa.mrules.callable.ICallable
Eligible sub-lexers: FUNCTION
Mandatory and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Ends with all of these patterns:
Fixed String: "end of ruleset" (case insensitive)
End of file
Syntaxic Scheme:
─── ruleset ─── ┌─ ─┼─ ├─ └─ ───────<─────── ─────────────── [classImport]── [packageImport] ─┐ ─┼─ ─┤ ─┘ ─── ┌─ ─┼─ ├─ ├─ ├─ └─ ───────────────<─────────────── ─────────────────────────────── [name]───────────────────────── [contextFactory]─────────────── [stopAtFirstValidatedCondition] [setProperty]────────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── [FUNCTION]────────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── end of ruleset ─── EOF ───
ABS
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.arithmetic.Abs.
Description: Computes absolute value.
Tags: Accessors, Math
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "absolute value of" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
───absolute value of────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
AVAILABLE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MAvailableAccessor.
Description: Checks if a property is available.
Tags: Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: From Lexer ID PROPERTY
Fixed String: "is available" (case insensitive)
Syntaxic Scheme:
───[PROPERTY]───is available───
AVERAGE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.arithmetic.Average.
Description: Computes average value of a collection of numbers, with or without coefficient.
Tags: Accessors, Math
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: One of these sub Content Blocks
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: From Lexer ID AccList
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.accessor.MPropertyAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "using sub property" (case insensitive)
Mandatory and non-unique content block: From Lexer ID PROPERTY
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$FakeObject.
Content is not ordered.
Content details :
Starts with a fixed String: "filtering with condition" (case insensitive)
Mandatory and non-unique content block: From Lexer ID UniqueConditionLexer
Optional and unique content block: One of these sub Content Blocks
Optional and unique content block: All of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IReadAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "with coefficients" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.accessor.MPropertyAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "accessed using sub property" (case insensitive)
Mandatory and non-unique content block: From Lexer ID PROPERTY
Optional and unique content block: All of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.util.ArrayList.
Content is not ordered.
Content details :
Starts with all of these patterns:
Fixed String: "with coefficients" (case insensitive)
Fixed String: "[" (case insensitive)
Mandatory and unique content block: From Lexer ID AccList
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.accessor.MPropertyAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "accessed using sub property" (case insensitive)
Mandatory and unique content block: From Lexer ID PROPERTY
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.accessor.MPropertyAccessor.
Content is not ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and non-unique content block: From Lexer ID PROPERTY
Mandatory and unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "0HALF_UP".
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "using rounding mode" (case insensitive)
Mandatory and non-unique content block: From Lexer ID String
Syntaxic Scheme:
────┬─ └─ average of all elements of average of──────────────── ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] [AccList]──────────────────── ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ───────────────────────────────────── ───using sub property───[PROPERTY]─── ─┬─ ─┘ ────┬─ └─ ─────────────────────────────────────────────────────── ───filtering with condition───[UniqueConditionLexer]─── ─┬─ ─┘ ────┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ├─ │ ├─ └─ ────┬─ └─ ───────────────────────────────────────────────────────────── ───with coefficients────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┬─ ─┘ ────┬─ └─ ────────────────────────────────────────────── ───accessed using sub property───[PROPERTY]─── ─┬─ ─┘ ─── ────┬─ └─ ─────────────────────────────────── ───with coefficients───[AccList]─── ─┬─ ─┘ ────┬─ └─ ────────────────────────────────────────────── ───accessed using sub property───[PROPERTY]─── ─┬─ ─┘ ───────────────────────────── ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── ────┬─ └─ with coefficients accessed using sub property with coefficients sub property─────────────── ─┬─ ─┘ ───[PROPERTY]───────────────────────────────────────────────────────────── ─┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┤ │ ─┤ ─┘ ───using rounding mode───[String]───
CAST
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MCastAccessor.
Description: Forces a data to be transformed into a specified type.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Fixed String: "as" (case insensitive)
Mandatory and unique content block: From Lexer ID Class
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "of" (case insensitive)
Mandatory and unique content block: From Lexer ID Class
Syntaxic Scheme:
────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───as───[Class]────┬─ └─ ────────────────── ───of───[Class]─── ─┬─ ─┘ ───
COALESCE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MCoalesceAccessor.
Description: Selects the first non-null value.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Fixed String: "or if null" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and non-unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IReadAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "or if null" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── or if null ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ └─ ───────────────────────────<────────────────────────── ────────────────────────────────────────────────────── ───or if null────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┐ ─┼─ ─┘ ───
CONCATENATE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MConcatenateAccessor.
Description: Concatenates several Strings.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Fixed String: "." (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and non-unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IReadAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "." (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── . ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ └─ ──────────────────────<────────────────────── ───────────────────────────────────────────── ───.────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┐ ─┼─ ─┘ ───
COUNT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MCountAccessor.
Description: Counts the number of elements of a collection or array.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$FakeObject.
Content is not ordered.
Content details :
Starts with a fixed String: "that match" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionLexer
Syntaxic Scheme:
────┬─ └─ count elements of──── count all elements of ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ─────────────────────────────────── ───that match───[ConditionLexer]─── ─┬─ ─┘ ───
DATEDIFF
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MDateDiffAccessor.
Description: Computes the duration between two dates.
Tags: Accessors, Dates
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
One of these fixed Strings:
One of these patterns:
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "Y".
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "M".
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "D".
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "h".
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "m".
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "s".
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "z".
One of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
───number of────┬─ ├─ ├─ ├─ ├─ ├─ ├─ └─ years─────── months────── days──────── hours─────── minutes───── seconds───── milliseconds millis────── ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ from─── between ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ and to─ ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
DATEOP
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MDateManipulationAccessor.
Description: Performs operations on dates.
Tags: Accessors, Dates
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "modify date" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "by adding" (case insensitive)
Mandatory and non-unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with all of these patterns:
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
One of these fixed Strings:
Optional and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with all of these patterns:
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
One of these fixed Strings:
Optional and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with all of these patterns:
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
One of these fixed Strings:
Optional and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with all of these patterns:
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
One of these fixed Strings:
Optional and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with all of these patterns:
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
One of these fixed Strings:
Optional and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with all of these patterns:
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
One of these fixed Strings:
Optional and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with all of these patterns:
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
One of these fixed Strings:
Syntaxic Scheme:
─── modify date ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── by adding ─── ┌─ ─┼─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ├─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ├─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ├─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ├─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ├─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └─ ───────────────────────────────<────────────────────────────── ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ───────────────────────────── [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ year─ years ─┬─ ─┘ ────────── ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ───────────────────────────── [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ months month─ ─┬─ ─┘ ───────── ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ───────────────────────────── [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ days day─ ─┬─ ─┘ ─────────── ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ───────────────────────────── [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ hours hour─ ─┬─ ─┘ ────────── ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ───────────────────────────── [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ minutes minute─ ─┬─ ─┘ ──────── ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ───────────────────────────── [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ seconds second─ ─┬─ ─┘ ──────── ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ───────────────────────────── [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ ├─ ├─ └─ milliseconds millisecond─ milli─────── millis────── ─┬─ ─┤ ─┤ ─┘ ─── ─┐ ─┼─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┤ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┤ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┤ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┤ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┤ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┘ ───
DEFINED
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MDefinedAccessor.
Description: Checks if a local variable is defined.
Tags: Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with all of these patterns:
Fixed String: "$" (case insensitive)
Mandatory and unique content block: From Lexer ID PROPERTY
Fixed String: "is defined" (case insensitive)
Syntaxic Scheme:
───$───[PROPERTY]───is defined───
FILTER
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MFilterAccessor.
Description: Filters elements of a collection or array.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$FakeObject.
Content is not ordered.
Content details :
Starts with a fixed String: "that match" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionLexer
Syntaxic Scheme:
────┬─ └─ filter elements of──── filter all elements of ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───that match───[ConditionLexer]───
FORMAT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MFormatAccessor.
Description: Formats a message.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "format message" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and non-unique content block: Anonymous lexer
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MFormatAccessor$Argument.
Content is not ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: Anonymous lexer
Lexer type: RegexLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Validation regular expression: \w+
Fixed String: "->" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
─── format message ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ └─ ───────────────────────<────────────────────── ────────────────────────────────────────────── ───->────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┐ ─┼─ ─┘ ───
ITERATE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MIterateAccessor.
Description: Interates on the elements of a collection, array or delimited String.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: One of these sub Content Blocks
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: From Lexer ID AccList
Ends with one of these patterns:
All of these patterns:
Fixed String: "using separator" (case insensitive)
Mandatory and unique content block: From Lexer ID String
Syntaxic Scheme:
────┬─ └─ iterate on──────────────── iterate on all elements of ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] [AccList]──────────────────── ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ──────────────────────────────── ───using separator───[String]─── ─┬─ ─┘ ───
MAPENTRIES
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MMapEntriesAccessor.
Description: All entries of a Map.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
────┬─ └─ entries of──── all entries of ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
MAPKEYS
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MMapKeysAccessor.
Description: All keys of a Map.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
────┬─ └─ keys of──── all keys of ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
MAPVALUES
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MMapValuesAccessor.
Description: All values of a Map.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
────┬─ └─ values of──── all values of ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
MIN
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MMinMaxAccessor$Min.
Description: Searches the minimum value(s) in a collection, allowing to filter elements and to use values of nested properties.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these patterns:
All of these patterns:
Fixed String: "minimum" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Fixed String: "values in" (case insensitive)
Fixed String: "minimum value in" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.accessor.MValuesAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "on properties" (case insensitive)
Mandatory and unique content block: From Lexer ID VALUES
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "true".
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$FakeObject.
Content is not ordered.
Content details :
Starts with a fixed String: "of elements which match" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionLexer
Syntaxic Scheme:
────┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └─ ───minimum────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───values in─── minimum value in─────────────────────────────────────────────── ─┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ────────────────────────────── ───on properties───[VALUES]─── ─┬─ ─┘ ────┬─ └─ ────────────────────────────────── considering null value as smallest ─┬─ ─┘ ────┬─ └─ ──────────────────────────────────────────────── ───of elements which match───[ConditionLexer]─── ─┬─ ─┘ ───
MAX
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MMinMaxAccessor$Max.
Description: Searches the maximum value(s) in a collection, allowing to filter elements and to use values of nested properties.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these patterns:
All of these patterns:
Fixed String: "maximum" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Fixed String: "values in" (case insensitive)
Fixed String: "maximum value in" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.accessor.MValuesAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "on properties" (case insensitive)
Mandatory and unique content block: From Lexer ID VALUES
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "true".
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$FakeObject.
Content is not ordered.
Content details :
Starts with a fixed String: "of elements which match" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionLexer
Syntaxic Scheme:
────┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └─ ───maximum────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───values in─── maximum value in─────────────────────────────────────────────── ─┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ────────────────────────────── ───on properties───[VALUES]─── ─┬─ ─┘ ────┬─ └─ ───────────────────────────────── considering null value as highest ─┬─ ─┘ ────┬─ └─ ──────────────────────────────────────────────── ───of elements which match───[ConditionLexer]─── ─┬─ ─┘ ───
NEW
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MNewInstanceAccessor.
Description: Instantiates an Object, with or without arguments.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer ID Class
Optional and unique content block: From Lexer ID NEW#Arguments
Syntaxic Scheme:
────┬─ └─ new──────────── new instance of ─┬─ ─┘ ───[Class]────┬─ └─ ─────────────── [NEW#Arguments] ─┬─ ─┘ ───
NEW#Arguments
Lexer type: ObjectLexer.
Returning type: class java.util.ArrayList.
Description: Arguments for object instantiation.
Tags: Accessors, Technical
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
Fixed String: "(" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and non-unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IReadAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "," (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Ends with a fixed String: ")" (case insensitive)
Syntaxic Scheme:
─── ( ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ └─ ──────────────────────<────────────────────── ───────────────────────────────────────────── ───,────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┐ ─┼─ ─┘ ─── ) ───
NULLIFEMPTY
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MNullIfEmptyAccessor.
Description: Returns null if the input value is empty.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "null if" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, EXEWRAPPER, CleaningAccessorParenthesis
Ends with a fixed String: "is empty" (case insensitive)
Syntaxic Scheme:
───null if────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───is empty───
ROUND
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.arithmetic.Round.
Description: Rounds a value using provided rounding mode.
Tags: Accessors, Math
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "round" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "using rounding mode" (case insensitive)
Mandatory and non-unique content block: From Lexer ID String
Syntaxic Scheme:
───round────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ──────────────────────────────────── ───using rounding mode───[String]─── ─┬─ ─┘ ───
PROPERTY
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MPropertyAccessor.
Description: Data beans access / write.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Matches a data access, from input or output bean (starts with ":"), from local variable (starts with "$") or from global variable (starts with "#").
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IReadAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "of" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
────┬─ ├─ ├─ ├─ ├─ ├─ └─ :propertyName──────────────────────────────────────────── :!fieldName────────────────────────────────────────────── :!(my.packagename.MyClassName.STATIC_FIELD_NAME)───────── :!(my.packagename.MyClassName.staticMethodName(argument)) :!methodName(argument)─────────────────────────────────── $local_variable_name───────────────────────────────────── #GLOBAL_VARIABLE_NAME──────────────────────────────────── ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ────────────────────────────────────────────── ───of────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┬─ ─┘ ───
SEARCH
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MSearchAccessor.
Description: Searches a collection for the first element matching a condition.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "search first element of" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$FakeObject.
Content is not ordered.
Content details :
Starts with a fixed String: "that match" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionLexer
Syntaxic Scheme:
───search first element of────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───that match───[ConditionLexer]───
SIZE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MSizeAccessor.
Description: Computes the size of a collection, an array, a String...
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "size of" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
───size of────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
SPLIT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MSplitAccessor.
Description: Splits a String by separator.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "split" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "using separator" (case insensitive)
Mandatory and unique content block: From Lexer ID String
Syntaxic Scheme:
───split────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ──────────────────────────────── ───using separator───[String]─── ─┬─ ─┘ ───
SUBPART
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MSubPartAccessor.
Description: Retains a subpart of a Collection, a String, an Array, from start index (inclusive) to end index (exclusive).
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "subpart of" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and non-unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.math.BigInteger.
Content is not ordered.
Content details :
Starts with a fixed String: "from" (case insensitive)
Mandatory and unique content block: From Lexer ID Integer
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.math.BigInteger.
Content is not ordered.
Content details :
Starts with a fixed String: "to" (case insensitive)
Mandatory and unique content block: From Lexer ID Integer
Syntaxic Scheme:
─── subpart of ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ └─ ───────────<────────── ───from───[Integer]─── ───to───[Integer]───── ─┐ ─┼─ ─┘ ───
SUM
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.arithmetic.Sum.
Description: Computes a sum.
Tags: Accessors, Math
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: One of these sub Content Blocks
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: From Lexer ID AccList
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.accessor.MPropertyAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "using sub property" (case insensitive)
Mandatory and non-unique content block: From Lexer ID PROPERTY
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$FakeObject.
Content is not ordered.
Content details :
Starts with a fixed String: "filtering with condition" (case insensitive)
Mandatory and non-unique content block: From Lexer ID UniqueConditionLexer
Syntaxic Scheme:
────┬─ ├─ └─ sum all elements of─── sum of──────────────── sum of all elements of ─┬─ ─┤ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] [AccList]──────────────────── ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ───────────────────────────────────── ───using sub property───[PROPERTY]─── ─┬─ ─┘ ────┬─ └─ ─────────────────────────────────────────────────────── ───filtering with condition───[UniqueConditionLexer]─── ─┬─ ─┘ ───
VALUE#Null
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.accessor.MValueAccessor.
Description: Null value accessor.
Tags: Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer ID Null
Syntaxic Scheme:
───[Null]───
VALUE#String
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.accessor.MValueAccessor.
Description: String value accessor.
Tags: Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer IDs [RawString, String]
Syntaxic Scheme:
────┬─ └─ [RawString] [String]─── ─┬─ ─┘ ───
VALUE#Integer
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.accessor.MValueAccessor.
Description: Integer value accessor.
Tags: Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer ID Integer
Syntaxic Scheme:
───[Integer]───
VALUE#Decimal
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.accessor.MValueAccessor.
Description: Decimal value accessor.
Tags: Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer ID Decimal
Syntaxic Scheme:
───[Decimal]───
VALUE#Boolean
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.accessor.MValueAccessor.
Description: Boolean value accessor.
Tags: Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer ID Boolean
Syntaxic Scheme:
───[Boolean]───
VPROPERTY
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.accessor.MVariablePropertyAccessor.
Description: Java bean access using dynamically computed property name.
Tags: Accessors
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "`" (case insensitive)
Mandatory and unique content block: Anonymous lexer
Lexer type: SubParseLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Mandatory and unique content block: Anonymous lexer
Lexer type: NextCharLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Reads until: <<Any character except regex "`">>.
Ends with a fixed String: "`" (case insensitive)
Syntaxic Scheme:
───`───<<Any character except regex "`">>───`───
MATH
Lexer type: ActionLexer.
Returning type: class com.massa.mrules.accessor.arithmetic.MSingleMathOperation.
Description: Technical Accessors allowing to write math operations (for example :property1 + :property2).
Tags: Accessors, Technical
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with:
Mandatory and unique content block: From Lexer ID MathBuilder
No action properties defined.
Result property: builder.!build().
Syntaxic Scheme:
───[MathBuilder]───
MathBuilder
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.MathBuilder.
Description: Technical Accessors allowing to write math operations (for example :property1 + :property2).
Tags: Accessors, Technical
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
All of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.extensions.dsl.factory.MathBuilder$Sub
Eligible sub-lexers: MathSubRight, MathSubRightBuilder
All of these patterns:
Fixed String: "(" (case insensitive)
Mandatory and unique content block: From Lexer ID MathBuilder
Fixed String: ")" (case insensitive)
Optional and non-unique content block: From Lexer return type interface com.massa.mrules.extensions.dsl.factory.MathBuilder$Sub
Eligible sub-lexers: MathSubRight, MathSubRightBuilder
Syntaxic Scheme:
─── ─┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └─ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ [MathSubRight]─────── [MathSubRightBuilder] ─┬─ ─┘ ─── ───(───[MathBuilder]───)─────────────────────────────────────────────── ─┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┘ ─── ┌─ ─┼─ ├─ └─ ──────────<────────── ───────────────────── [MathSubRight]─────── [MathSubRightBuilder] ─┐ ─┼─ ─┤ ─┘ ───
MathSubRight
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.MathBuilder$Right.
Description: Technical Accessors allowing to write math operations (for example :property1 + :property2).
Tags: Accessors, Technical
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.operator.math.IMathOperator
Eligible sub-lexers: DIVIDED, MINUS, MODULO, MULTIPLIED, PLUS, POWER
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "using rounding mode" (case insensitive)
Mandatory and non-unique content block: From Lexer ID String
Syntaxic Scheme:
────┬─ ├─ ├─ ├─ ├─ └─ [DIVIDED]─── [MINUS]───── [MODULO]──── [MULTIPLIED] [PLUS]────── [POWER]───── ─┬─ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ──────────────────────────────────── ───using rounding mode───[String]─── ─┬─ ─┘ ───
MathSubRightBuilder
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.MathBuilder$RightBuilder.
Description: Technical Accessors allowing to write math operations (for example :property1 + :property2).
Tags: Accessors, Technical
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.operator.math.IMathOperator
Eligible sub-lexers: DIVIDED, MINUS, MODULO, MULTIPLIED, PLUS, POWER
Fixed String: "(" (case insensitive)
Mandatory and unique content block: From Lexer ID MathBuilder
Fixed String: ")" (case insensitive)
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "using rounding mode" (case insensitive)
Mandatory and non-unique content block: From Lexer ID String
Syntaxic Scheme:
────┬─ ├─ ├─ ├─ ├─ └─ [DIVIDED]─── [MINUS]───── [MODULO]──── [MULTIPLIED] [PLUS]────── [POWER]───── ─┬─ ─┤ ─┤ ─┤ ─┤ ─┘ ───(───[MathBuilder]───)────┬─ └─ ──────────────────────────────────── ───using rounding mode───[String]─── ─┬─ ─┘ ───
VALUES
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.accessor.MValuesAccessor.
Description: Declares a collection of accessors.
Tags: Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer ID AccList
Syntaxic Scheme:
───[AccList]───
AccList
Lexer type: ObjectLexer.
Returning type: class java.util.ArrayList.
Description: Technical lexer to declare a collection of accessors.
Tags: Accessors, Technical
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
Fixed String: "[" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and non-unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IReadAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "," (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Ends with a fixed String: "]" (case insensitive)
Syntaxic Scheme:
─── [ ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ └─ ──────────────────────<────────────────────── ───────────────────────────────────────────── ───,────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┐ ─┼─ ─┘ ─── ] ───
DIVIDED
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.math.DIVIDED.
Tags: Operators, Math, Math Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "/" (case insensitive)
Fixed String: "divided by" (case insensitive)
Syntaxic Scheme:
────┬─ └─ /───────── divided by ─┬─ ─┘ ───
MINUS
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.math.MINUS.
Tags: Operators, Math, Math Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "-" (case insensitive)
Fixed String: "minus" (case insensitive)
Syntaxic Scheme:
────┬─ └─ -──── minus ─┬─ ─┘ ───
MODULO
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.math.MODULO.
Tags: Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "%" (case insensitive)
Fixed String: "modulo" (case insensitive)
Syntaxic Scheme:
────┬─ └─ %───── modulo ─┬─ ─┘ ───
MULTIPLIED
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.math.MULTIPLIED.
Tags: Operators, Math, Math Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "*" (case insensitive)
Fixed String: "multiplied by" (case insensitive)
Syntaxic Scheme:
────┬─ └─ *──────────── multiplied by ─┬─ ─┘ ───
PLUS
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.math.PLUS.
Tags: Operators, Math, Math Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "+" (case insensitive)
Fixed String: "plus" (case insensitive)
Syntaxic Scheme:
────┬─ └─ +─── plus ─┬─ ─┘ ───
POWER
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.math.POWER.
Tags: Operators, Math, Math Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "^" (case insensitive)
Fixed String: "power" (case insensitive)
Syntaxic Scheme:
────┬─ └─ ^──── power ─┬─ ─┘ ───
AND
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.logical.AND.
Tags: Operators, Logical Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "&&" (case insensitive)
Fixed String: "and" (case insensitive)
Syntaxic Scheme:
────┬─ └─ &&─ and ─┬─ ─┘ ───
OR
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.logical.OR.
Tags: Operators, Logical Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "||" (case insensitive)
Fixed String: "or" (case insensitive)
Syntaxic Scheme:
────┬─ └─ || or ─┬─ ─┘ ───
XOR
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.logical.XOR.
Tags: Operators, Logical Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "xor" (case insensitive)
Syntaxic Scheme:
───xor───
BETWEEN
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.BETWEEN.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "between" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "and" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
───between────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───and────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
COLDISJOINED
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.COLDISJOINED.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "is disjoined with" (case insensitive)
Syntaxic Scheme:
───is disjoined with───
COLEQ
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.COLEQ.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "equals ignoring order" (case insensitive)
Syntaxic Scheme:
───equals ignoring order───
COLINCLUDED
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.COLINCLUDED.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "is included in" (case insensitive)
Syntaxic Scheme:
───is included in───
COLINCLUDES
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.COLINCLUDES.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "includes" (case insensitive)
Syntaxic Scheme:
───includes───
COLINTERSECTS
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.COLINTERSECTS.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "intersects" (case insensitive)
Syntaxic Scheme:
───intersects───
COLNE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.COLNE.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "differs ignoring order from" (case insensitive)
Syntaxic Scheme:
───differs ignoring order from───
COLNOTIN
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.COLNOTIN.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "is not included in" (case insensitive)
Syntaxic Scheme:
───is not included in───
CONTAINS
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.CONTAINS.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "contains" (case insensitive)
Syntaxic Scheme:
───contains───
EMPTY
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.EMPTY.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "is empty" (case insensitive)
Syntaxic Scheme:
───is empty───
EQ
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.EQ.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "==" (case insensitive)
One of these fixed Strings:
Syntaxic Scheme:
────┬─ ├─ ├─ └─ ==───────── is equal to equals───── eq───────── ─┬─ ─┤ ─┤ ─┘ ───
GT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.GT.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: ">" (case insensitive)
Fixed String: "is greater than" (case insensitive)
Syntaxic Scheme:
────┬─ └─ >────────────── is greater than ─┬─ ─┘ ───
GTE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.GTE.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: ">=" (case insensitive)
Fixed String: "is equal or greater than" (case insensitive)
Syntaxic Scheme:
────┬─ └─ >=────────────────────── is equal or greater than ─┬─ ─┘ ───
IN
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.IN.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "is in" (case insensitive)
Syntaxic Scheme:
───is in───
LT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.LT.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "<" (case insensitive)
Fixed String: "is lesser than" (case insensitive)
Syntaxic Scheme:
────┬─ └─ <───────────── is lesser than ─┬─ ─┘ ───
LTE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.LTE.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Fixed String: "<=" (case insensitive)
Fixed String: "is equal or lesser than" (case insensitive)
Syntaxic Scheme:
────┬─ └─ <=───────────────────── is equal or lesser than ─┬─ ─┘ ───
MATCH
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.MATCH.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "matches the regex" (case insensitive)
Syntaxic Scheme:
───matches the regex───
NE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.NE.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
One of these fixed Strings:
One of these fixed Strings:
Syntaxic Scheme:
────┬─ ├─ ├─ ├─ └─ <>───────────── !=───────────── is not equal to ne───────────── differs from─── ─┬─ ─┤ ─┤ ─┤ ─┘ ───
NOTCONTAINS
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.NOTCONTAINS.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "does not contain" (case insensitive)
Syntaxic Scheme:
───does not contain───
NOTEMPTY
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.NOTEMPTY.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "is not empty" (case insensitive)
Syntaxic Scheme:
───is not empty───
NOTIN
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.NOTIN.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "is not in" (case insensitive)
Syntaxic Scheme:
───is not in───
NOTMATCH
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.NOTMATCH.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "does not match the regex" (case insensitive)
Syntaxic Scheme:
───does not match the regex───
NOTNULL
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.NOTNULL.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these fixed Strings:
Syntaxic Scheme:
────┬─ ├─ └─ != null──── !=null───── is not null ─┬─ ─┤ ─┘ ───
NULL
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.operator.evaluation.NULL.
Tags: Operators, Evaluation Operators
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these fixed Strings:
Syntaxic Scheme:
────┬─ ├─ └─ ==null─ == null is null ─┬─ ─┤ ─┘ ───
UniqueConditionLexer
Lexer type: ActionLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$FakeObject.
Description: Technical lexer to build a condition, for example :property1 <= :property2.
Tags: Conditions, Technical
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with:
Mandatory and unique content block: From Lexer ID UniqueConditionBuilder
No action properties defined.
Result property: builder.!build().
Syntaxic Scheme:
───[UniqueConditionBuilder]───
ConditionLexer
Lexer type: ActionLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$FakeObject.
Description: Technical lexer to build a condition, for example :property1 <= :property2.
Tags: Conditions, Technical
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with:
Mandatory and unique content block: From Lexer ID ConditionBuilder
No action properties defined.
Result property: builder.!build().
Syntaxic Scheme:
───[ConditionBuilder]───
UniqueConditionBuilder
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder.
Description: Technical lexer to build a condition, for example :property1 <= :property2.
Tags: Conditions, Technical
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.condition.ICondition
Eligible sub-lexers: EVAL, NOT, ACCWRAPPER
All of these patterns:
Fixed String: "(" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionBuilder
Fixed String: ")" (case insensitive)
Syntaxic Scheme:
────┬─ ├─ ├─ └─ [EVAL]────────────────────────── [NOT]─────────────────────────── [ACCWRAPPER]──────────────────── ───(───[ConditionBuilder]───)─── ─┬─ ─┤ ─┤ ─┘ ───
ConditionBuilder
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder.
Description: Technical lexer to build a condition, for example :property1 <= :property2.
Tags: Conditions, Technical
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.condition.ICondition
Eligible sub-lexers: EVAL, NOT, ACCWRAPPER
All of these patterns:
Fixed String: "(" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionBuilder
Fixed String: ")" (case insensitive)
Optional and non-unique content block: Anonymous lexer
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$SubCondition.
Content is not ordered.
Content details :
Starts with:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.operator.logical.ILogicalOperator
Eligible sub-lexers: AND, OR, XOR
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.condition.ICondition
Eligible sub-lexers: EVAL, NOT, ACCWRAPPER
Optional and non-unique content block: Anonymous lexer
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.extensions.dsl.factory.ConditionBuilder$SubConditionBuilder.
Content is not ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.operator.logical.ILogicalOperator
Eligible sub-lexers: AND, OR, XOR
Fixed String: "(" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionBuilder
Ends with a fixed String: ")" (case insensitive)
Syntaxic Scheme:
─── ─┬─ ├─ ├─ └─ [EVAL]────────────────────────── [NOT]─────────────────────────── [ACCWRAPPER]──────────────────── ───(───[ConditionBuilder]───)─── ─┬─ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ ├─ │ │ └─ ───────────────────────<────────────────────── ────────────────────────────────────────────── ────┬─ ├─ └─ [AND] [OR]─ [XOR] ─┬─ ─┤ ─┘ ────┬─ ├─ └─ [EVAL]────── [NOT]─────── [ACCWRAPPER] ─┬─ ─┤ ─┘ ─────────── ────┬─ ├─ └─ [AND] [OR]─ [XOR] ─┬─ ─┤ ─┘ ───(───[ConditionBuilder]───)─── ─┐ ─┼─ ─┤ │ │ ─┘ ───
EVAL
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.condition.MEvaluationCondition.
Description: Builds an Evaluation Condition.
Tags: Conditions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.operator.evaluation.IEvaluationOperator
Eligible sub-lexers: BETWEEN, COLDISJOINED, COLEQ, COLINCLUDED, COLINCLUDES, COLINTERSECTS, COLNE, COLNOTIN, CONTAINS, EMPTY, EQ, GT, GTE, IN, LT, LTE, MATCH, NE, NOTCONTAINS, NOTEMPTY, NOTIN, NOTMATCH, NOTNULL, NULL
Optional and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: Anonymous lexer
Lexer type: ActionLexer.
Returning type: interface com.massa.mrules.operator.logical.ILogicalOperator.
Content is not ordered.
Content details :
Starts with all of these patterns:
Fixed String: "using" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.operator.logical.ILogicalOperator
Eligible sub-lexers: AND, OR, XOR
Fixed String: "as iteration operator" (case insensitive)
No action properties defined.
Result property: iterationOperator.
Syntaxic Scheme:
────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [BETWEEN]────── [COLDISJOINED]─ [COLEQ]──────── [COLINCLUDED]── [COLINCLUDES]── [COLINTERSECTS] [COLNE]──────── [COLNOTIN]───── [CONTAINS]───── [EMPTY]──────── [EQ]─────────── [GT]─────────── [GTE]────────── [IN]─────────── [LT]─────────── [LTE]────────── [MATCH]──────── [NE]─────────── [NOTCONTAINS]── [NOTEMPTY]───── [NOTIN]──────── [NOTMATCH]───── [NOTNULL]────── [NULL]───────── ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ───────────────────────────── [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ └─ ───────────────────────────────────────────────── ───using────┬─ ├─ └─ [AND] [OR]─ [XOR] ─┬─ ─┤ ─┘ ───as iteration operator─── ─┬─ ─┘ ───
NOT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.condition.MConditionNot.
Description: Inverts the result of a condition.
Tags: Conditions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "not" (case insensitive)
Mandatory and unique content block: From Lexer ID UniqueConditionLexer
Syntaxic Scheme:
───not───[UniqueConditionLexer]───
BLOCK
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.executable.MExecutionBlock.
Description: Declares a block of rules.
Tags: Executables
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "open block" (case insensitive)
Optional and non-unique content block: One of these sub Content Blocks
Optional and unique content block: From Lexer ID name
Optional and unique content block: From Lexer ID stopAtFirstValidatedCondition
Optional and unique content block: From Lexer ID overrideCompilationLevel
Mandatory and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Ends with a fixed String: "close block" (case insensitive)
Syntaxic Scheme:
─── open block ─── ┌─ ─┼─ ├─ ├─ └─ ───────────────<─────────────── ─────────────────────────────── [name]───────────────────────── [stopAtFirstValidatedCondition] [overrideCompilationLevel]───── ─┐ ─┼─ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── close block ───
INDEX
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.executable.MIndex.
Description: Declares a switch / case rule (indexed rule).
Tags: Executables
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "when value of" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and non-unique content block: Anonymous lexer
Lexer type: MappedPropertyLexer.
Returning type: interface java.util.Map$Entry.
Content is not ordered.
Content details :
Starts with all of these patterns:
Fixed String: "is" (case insensitive)
One of these patterns:
Optional and unique content block: From Lexer ID String
Optional and unique content block: From Lexer ID Integer
Optional and unique content block: From Lexer ID Decimal
Optional and unique content block: From Lexer ID Boolean
Fixed String: "then" (case insensitive)
Mandatory and unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.executable.MIndex$IndexAction.
Content is not ordered.
Content details :
Starts with:
Optional and unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Optional and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Ends with one of these patterns:
Fixed String: "do as" (case insensitive)
Optional and unique content block: Anonymous lexer
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.executable.MIndex$IndexAction.
Content is not ordered.
Content details :
Starts with all of these patterns:
Fixed String: "do as" (case insensitive)
One of these patterns:
Optional and unique content block: From Lexer ID String
Optional and unique content block: From Lexer ID Integer
Optional and unique content block: From Lexer ID Decimal
Optional and unique content block: From Lexer ID Boolean
Optional and unique content block: Anonymous lexer
Lexer type: ValuesLexer.
Returning type: interface java.util.List.
Content is not ordered.
Content details :
Starts with a fixed String: "is something else then" (case insensitive)
Mandatory and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Ends with a fixed String: "end of when" (case insensitive)
Syntaxic Scheme:
─── when value of ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── is ─── ─┬─ ├─ ├─ ├─ └─ ───────── [String]─ [Integer] [Decimal] [Boolean] ─┬─ ─┤ ─┤ ─┤ ─┘ ─── then ─── ─┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └─ ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ──────────────────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── ──────────────────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┬─ └─ do as ───── ─┬─ ─┘ ─── ───do as────┬─ ├─ ├─ ├─ └─ ───────── [String]─ [Integer] [Decimal] [Boolean] ─┬─ ─┤ ─┤ ─┤ ─┘ ───────────────────────────────────────────────────────── ─┬─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┘ ─── ─┬─ │ └─ ───────────────────────────────────────────────────────────── ─── is something else then ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┬─ │ ─┘ ─── end of when ───
RULE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.executable.MRule.
Description: Declares an if / then / else rule.
Tags: Executables
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "if" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionLexer
Mandatory and unique content block: Anonymous lexer
Lexer type: ValuesLexer.
Returning type: interface java.util.List.
Content is not ordered.
Content details :
Starts with a fixed String: "then" (case insensitive)
Mandatory and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Optional and non-unique content block: Anonymous lexer
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.executable.MRule$ElseIf.
Content is ordered.
Content details :
Starts with a fixed String: "elseif" (case insensitive)
Mandatory and unique content block: From Lexer ID ConditionLexer
Mandatory and unique content block: Anonymous lexer
Lexer type: ValuesLexer.
Returning type: interface java.util.List.
Content is not ordered.
Content details :
Starts with a fixed String: "then" (case insensitive)
Mandatory and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Optional and unique content block: Anonymous lexer
Lexer type: ValuesLexer.
Returning type: interface java.util.List.
Content is not ordered.
Content details :
Starts with a fixed String: "else" (case insensitive)
Mandatory and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Ends with a fixed String: "end of if" (case insensitive)
Syntaxic Scheme:
─── if ─── [ConditionLexer] ─── then ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ │ └─ ───────────────────────────────────<─────────────────────────────────── ─────────────────────────────────────────────────────────────────────── ─── elseif ─── [ConditionLexer] ─── then ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┐ ─┼─ │ ─┘ ─── ─┬─ │ └─ ─────────────────────────────────────────── ─── else ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┬─ │ ─┘ ─── end of if ───
FOREACH
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.executable.MForEach.
Description: Allows to iterate on all elements of a collection or an array and to perform actions at each loop.
Tags: Executables
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "for each elements in" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and non-unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "set current element into $" (case insensitive)
Mandatory and unique content block: From Lexer ID NextSpace
Ends with a fixed String: "then" (case insensitive)
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "set current index into $" (case insensitive)
Mandatory and unique content block: From Lexer ID NextSpace
Ends with a fixed String: "then" (case insensitive)
Optional and non-unique content block: One of these sub Content Blocks
Optional and unique content block: From Lexer ID name
Optional and unique content block: From Lexer ID stopAtFirstValidatedCondition
Optional and unique content block: From Lexer ID resetCacheAtEachLoop
Mandatory and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "execute all of" (case insensitive)
Mandatory and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Ends with a fixed String: "end of for" (case insensitive)
Syntaxic Scheme:
─── for each elements in ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ └─ ──────────────────────────<────────────────────────── ───set current element into $───[NextSpace]───then─── ───set current index into $───[NextSpace]───then───── ─┐ ─┼─ ─┘ ─── ┌─ ─┼─ ├─ ├─ └─ ───────────────<─────────────── ─────────────────────────────── [name]───────────────────────── [stopAtFirstValidatedCondition] [resetCacheAtEachLoop]───────── ─┐ ─┼─ ─┤ ─┤ ─┘ ─── execute all of ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── end of for ───
FOREACHNUMBER
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.executable.MForEachNumber.
Description: Allows to iterate on a set of numbers and to perform actions at each loop.
Tags: Executables
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "for each numbers" (case insensitive)
Mandatory and non-unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "starting from" (case insensitive)
Mandatory and unique content block: From Lexer ID NextSpace
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "ending at" (case insensitive)
Mandatory and unique content block: From Lexer ID NextSpace
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "performing" (case insensitive)
Mandatory and unique content block: From Lexer ID NextSpace
Ends with a fixed String: "iterations" (case insensitive)
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "increment by" (case insensitive)
Mandatory and unique content block: From Lexer ID NextSpace
Mandatory and non-unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "set current element into $" (case insensitive)
Mandatory and unique content block: From Lexer ID NextSpace
Ends with a fixed String: "then" (case insensitive)
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "set current index into $" (case insensitive)
Mandatory and unique content block: From Lexer ID NextSpace
Ends with a fixed String: "then" (case insensitive)
Optional and non-unique content block: One of these sub Content Blocks
Optional and unique content block: From Lexer ID name
Optional and unique content block: From Lexer ID stopAtFirstValidatedCondition
Optional and unique content block: From Lexer ID resetCacheAtEachLoop
Mandatory and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "execute all of" (case insensitive)
Mandatory and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Ends with a fixed String: "end of for" (case insensitive)
Syntaxic Scheme:
─── for each numbers ─── ┌─ ─┼─ ├─ ├─ └─ ─────────────────────<───────────────────── ───starting from───[NextSpace]───────────── ───ending at───[NextSpace]───────────────── ───performing───[NextSpace]───iterations─── ───increment by───[NextSpace]────────────── ─┐ ─┼─ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ └─ ──────────────────────────<────────────────────────── ───set current element into $───[NextSpace]───then─── ───set current index into $───[NextSpace]───then───── ─┐ ─┼─ ─┘ ─── ┌─ ─┼─ ├─ ├─ └─ ───────────────<─────────────── ─────────────────────────────── [name]───────────────────────── [stopAtFirstValidatedCondition] [resetCacheAtEachLoop]───────── ─┐ ─┼─ ─┤ ─┤ ─┘ ─── execute all of ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── end of for ───
SET
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionSet.
Description: Sets a value.
Tags: Executables, Actions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "set" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IWriteAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "into" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IWriteAccessor
Eligible sub-lexers: PROPERTY, VPROPERTY
Syntaxic Scheme:
───set────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───into────┬─ └─ [PROPERTY]─ [VPROPERTY] ─┬─ ─┘ ───
ADD
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionAdd.
Description: Adds a value in a collection.
Tags: Executables, Actions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "add" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IReadWriteAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "into" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadWriteAccessor
Eligible sub-lexers: PROPERTY, VPROPERTY
Syntaxic Scheme:
───add────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───into────┬─ └─ [PROPERTY]─ [VPROPERTY] ─┬─ ─┘ ───
ADDALL
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionAddAll.
Description: Add several values in a collection.
Tags: Executables, Actions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "add all elements of" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IReadWriteAccessor.
Content is not ordered.
Content details :
Starts with a fixed String: "into" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadWriteAccessor
Eligible sub-lexers: PROPERTY, VPROPERTY
Syntaxic Scheme:
───add all elements of────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───into────┬─ └─ [PROPERTY]─ [VPROPERTY] ─┬─ ─┘ ───
CLEAR
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionClear.
Description: Clears a collection.
Tags: Executables, Actions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
────┬─ └─ clear content of clear─────────── ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionPrint.
Description: Prints a message.
Tags: Executables, Actions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "print" (case insensitive)
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "true".
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
───print────┬─ └─ ──────── as error ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
PRINTF
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionPrintF.
Description: Prints a message after formating it.
Tags: Executables
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "print formated" (case insensitive)
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "true".
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and non-unique content block: Anonymous lexer
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionPrintF$Argument.
Content is not ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: Anonymous lexer
Lexer type: RegexLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Validation regular expression: [a-zA-Z0-9_]+
Fixed String: "->" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
─── print formated ─── ─┬─ └─ ──────── as error ─┬─ ─┘ ─── ─┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ┌─ ─┼─ └─ ───────────────────────<────────────────────── ────────────────────────────────────────────── ───->────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┐ ─┼─ ─┘ ───
RESET_CACHE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionResetCache.
Description: Resets the current data access cache. For advanced users.
Tags: Executables, Actions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "reset all cached data" (case insensitive)
Syntaxic Scheme:
───reset all cached data───
SORT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionSort.
Description: Sorts a collection or an array.
Tags: Executables, Actions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "true".
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "false".
Optional and unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "true".
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "false".
Optional and unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.accessor.IReadAccessor.
Content is not ordered.
Content details :
Starts with one of these fixed Strings:
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Optional and unique content block: Anonymous lexer
Lexer type: ValueLexer.
Returning type: class java.util.ArrayList.
Content is not ordered.
Content details :
Starts with all of these patterns:
One of these fixed Strings:
Fixed String: "[" (case insensitive)
Mandatory and unique content block: From Lexer ID AccList
Optional and unique content block: One of these sub Content Blocks
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "true".
Optional and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "false".
Syntaxic Scheme:
────┬─ └─ sort─────────── sort content of ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ────┬─ ├─ ├─ ├─ └─ ────────── asc─────── ascending─ descending desc────── ─┬─ ─┤ ─┤ ─┤ ─┘ ────┬─ ├─ ├─ ├─ └─ ─────────── nulls first null first─ nulls last─ null last── ─┬─ ─┤ ─┤ ─┤ ─┘ ────┬─ ├─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └─ ──────────────────────────────────────────────────────────────────── ────┬─ └─ by──────────────── using sub property ─┬─ ─┘ ────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ────┬─ └─ by──────────────── using sub property ─┬─ ─┘ ───[AccList]───────────────────────────── ─┬─ ─┤ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─┘ ────┬─ ├─ ├─ └─ ──────────── inplace───── to same list to new list─ ─┬─ ─┤ ─┤ ─┘ ───
FLOWCONTROL#STOP
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionFlowControl.
Description: Stops the execution of the current block, or of the block with specified name.
Tags: Executables, Actions, Flow Control
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "stop" (case insensitive)
Optional and unique content block: From Lexer ID String
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "DONTSTOP".
Syntaxic Scheme:
───stop────┬─ └─ ──────── [String] ─┬─ ─┘ ───
FLOWCONTROL#DONTSTOP
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionFlowControl.
Description: Do not stop current block or ruleset even if stop at firt validated condition is specified.
Tags: Executables, Actions, Flow Control
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "don't stop" (case insensitive)
Optional and unique content block: From Lexer ID String
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "DONTSTOP".
Syntaxic Scheme:
───don't stop────┬─ └─ ──────── [String] ─┬─ ─┘ ───
FLOWCONTROL#RAISEERROR
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionFlowControl.
Description: Raises an error with a message and stops the ruleset execution.
Tags: Executables, Actions, Flow Control
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "raise error" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "RAISEERROR".
Syntaxic Scheme:
───raise error────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
FLOWCONTROL#CONTINUE
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionFlowControl.
Description: Steps directly to the next element of the current loop, or of the loop with specified name.
Tags: Executables, Actions, Flow Control
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "continue" (case insensitive)
Optional and unique content block: From Lexer ID String
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "CONTINUE".
Syntaxic Scheme:
───continue────┬─ └─ ──────── [String] ─┬─ ─┘ ───
FLOWCONTROL#RESTART
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.action.MActionFlowControl.
Description: Restarts the current loop or the loop with specified name, with the same element.
Tags: Executables, Actions, Flow Control
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "restart" (case insensitive)
Optional and unique content block: From Lexer ID String
Mandatory and unique content block: Anonymous lexer
Lexer type: HardCodedLexer.
Returning type: class java.lang.String.
Content is not ordered.
Hard coded value type: java.lang.String.
Hard coded value: "RESTART".
Syntaxic Scheme:
───restart────┬─ └─ ──────── [String] ─┬─ ─┘ ───
FUNCTION
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.callable.Function.
Tags: Functions
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "declare function" (case insensitive)
Mandatory and unique content block: From Lexer ID String
Mandatory and non-unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable
Eligible sub-lexers: BLOCK, INDEX, RULE, FOREACH, FOREACHNUMBER, SET, ADD, ADDALL, CLEAR, PRINT, PRINTF, RESET_CACHE, SORT, FLOWCONTROL#STOP, FLOWCONTROL#DONTSTOP, FLOWCONTROL#RAISEERROR, FLOWCONTROL#CONTINUE, FLOWCONTROL#RESTART, CALL, RETURN, ACCEXEC
Ends with a fixed String: "end of function" (case insensitive)
Syntaxic Scheme:
─── declare function ─── [String] ─── ┌─ ─┼─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ ────────────<─────────── [BLOCK]───────────────── [INDEX]───────────────── [RULE]────────────────── [FOREACH]─────────────── [FOREACHNUMBER]───────── [SET]─────────────────── [ADD]─────────────────── [ADDALL]──────────────── [CLEAR]───────────────── [PRINT]───────────────── [PRINTF]──────────────── [RESET_CACHE]─────────── [SORT]────────────────── [FLOWCONTROL#STOP]────── [FLOWCONTROL#DONTSTOP]── [FLOWCONTROL#RAISEERROR] [FLOWCONTROL#CONTINUE]── [FLOWCONTROL#RESTART]─── [CALL]────────────────── [RETURN]──────────────── [ACCEXEC]─────────────── ─┐ ─┼─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── end of function ───
CALL
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.callable.Call.
Description: Executes a function with or without arguments.
Tags: Functions, Executables
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "call" (case insensitive)
Mandatory and unique content block: From Lexer ID String
Optional and non-unique content block: Anonymous lexer
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.callable.Call$Argument.
Content is not ordered.
Content details :
Starts with all of these patterns:
Mandatory and unique content block: Anonymous lexer
Lexer type: RegexLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Validation regular expression: [a-zA-Z0-9_]+
Fixed String: "->" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
─── call ─── [String] ─── ┌─ ─┼─ └─ ───────────────────────<────────────────────── ────────────────────────────────────────────── ───->────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ─── ─┐ ─┼─ ─┘ ───
RETURN
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.callable.Return.
Description: Returns from a function or from the ruleset.
Tags: Functions, Executables, Actions, Flow Control
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "return" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
───return────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
ACCEXEC
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.action.MAccessorWrapper.
Description: Technical lexer: wraps an accessor to an action.
Tags: Technical, Wrappers, Executables, Actions
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor$Standalone
Eligible sub-lexers: PROPERTY, VPROPERTY
Syntaxic Scheme:
────┬─ └─ [PROPERTY]─ [VPROPERTY] ─┬─ ─┘ ───
CONDWRAPPER
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.accessor.MConditionWrapperAccessor.
Description: Technical lexer: wraps a condition to an accessor.
Tags: Technical, Wrappers, Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer ID ConditionLexer
Syntaxic Scheme:
───[ConditionLexer]───
ACCWRAPPER
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.condition.MAccessorWrapperCondition.
Description: Technical lexer: wraps an accessor to a condition.
Tags: Technical, Wrappers, Conditions
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, EXEWRAPPER, CleaningAccessorParenthesis
Syntaxic Scheme:
────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───
EXEWRAPPER
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.accessor.MExecutableWrapperAccessor.
Description: Technical lexer: wraps an executable to an accessor.
Tags: Technical, Wrappers, Accessors
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.executable.IExecutable$ValueReturning
Eligible sub-lexers: CLEAR, SORT, CALL
Syntaxic Scheme:
────┬─ ├─ └─ [CLEAR] [SORT]─ [CALL]─ ─┬─ ─┤ ─┘ ───
CleaningAccessorParenthesis
Lexer type: ActionLexer.
Returning type: interface com.massa.mrules.accessor.IReadAccessor.
Description: Technical lexer: cleans parenthesis.
Tags: Technical
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with all of these patterns:
Fixed String: "(" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.accessor.IReadAccessor
Eligible sub-lexers: ABS, AVAILABLE, AVERAGE, CAST, COALESCE, CONCATENATE, COUNT, DATEDIFF, DATEOP, DEFINED, FILTER, FORMAT, ITERATE, MAPENTRIES, MAPKEYS, MAPVALUES, MIN, MAX, NEW, NULLIFEMPTY, ROUND, PROPERTY, SEARCH, SIZE, SPLIT, SUBPART, SUM, VALUE#Null, VALUE#String, VALUE#Integer, VALUE#Decimal, VALUE#Boolean, VPROPERTY, MATH, VALUES, CONDWRAPPER, EXEWRAPPER, CleaningAccessorParenthesis
Fixed String: ")" (case insensitive)
No action properties defined.
Result property: accessor.
Syntaxic Scheme:
───(────┬─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ ├─ └─ [ABS]──────────────────────── [AVAILABLE]────────────────── [AVERAGE]──────────────────── [CAST]─────────────────────── [COALESCE]─────────────────── [CONCATENATE]──────────────── [COUNT]────────────────────── [DATEDIFF]─────────────────── [DATEOP]───────────────────── [DEFINED]──────────────────── [FILTER]───────────────────── [FORMAT]───────────────────── [ITERATE]──────────────────── [MAPENTRIES]───────────────── [MAPKEYS]──────────────────── [MAPVALUES]────────────────── [MIN]──────────────────────── [MAX]──────────────────────── [NEW]──────────────────────── [NULLIFEMPTY]──────────────── [ROUND]────────────────────── [PROPERTY]─────────────────── [SEARCH]───────────────────── [SIZE]─────────────────────── [SPLIT]────────────────────── [SUBPART]──────────────────── [SUM]──────────────────────── [VALUE#Null]───────────────── [VALUE#String]─────────────── [VALUE#Integer]────────────── [VALUE#Decimal]────────────── [VALUE#Boolean]────────────── [VPROPERTY]────────────────── [MATH]─────────────────────── [VALUES]───────────────────── [CONDWRAPPER]──────────────── [EXEWRAPPER]───────────────── [CleaningAccessorParenthesis] ─┬─ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┤ ─┘ ───)───
contextFactory
Lexer type: ValueLexer.
Returning type: interface com.massa.mrules.context.IContextFactory.
Description: Declares context factory.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "context factory is" (case insensitive)
Mandatory and unique content block: From Lexer return type interface com.massa.mrules.context.IContextFactory
Eligible sub-lexers: CONTEXT#String, CONTEXT, INOUTCONTEXT, STANDALONECONTEXT
Syntaxic Scheme:
───context factory is────┬─ ├─ ├─ └─ [CONTEXT#String]─── [CONTEXT]────────── [INOUTCONTEXT]───── [STANDALONECONTEXT] ─┬─ ─┤ ─┤ ─┘ ───
CONTEXT#String
Lexer type: TransformLexer.
Returning type: class com.massa.mrules.context.MContextFactory.
Description: Declares context factory from a String, for example "CONTEXT:int[][]" for an array on ints as input.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Mandatory and unique content block: From Lexer ID String
Syntaxic Scheme:
───[String]───
CONTEXT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.context.MContextFactory.
Description: Declares context factory.
Tags: Global
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "for input" (case insensitive)
Mandatory and unique content block: From Lexer ID Class
Optional and unique content block: From Lexer ID contextCompilationLevel
Syntaxic Scheme:
───for input───[Class]────┬─ └─ ───────────────────────── [contextCompilationLevel] ─┬─ ─┘ ───
INOUTCONTEXT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.context.MInOutContextFactory.
Description: Declares context factory.
Tags: Global
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with all of these patterns:
Fixed String: "for input" (case insensitive)
Mandatory and unique content block: From Lexer ID Class
Fixed String: "and output" (case insensitive)
Mandatory and unique content block: From Lexer ID Class
Optional and unique content block: From Lexer ID contextCompilationLevel
Syntaxic Scheme:
───for input───[Class]───and output───[Class]────┬─ └─ ───────────────────────── [contextCompilationLevel] ─┬─ ─┘ ───
STANDALONECONTEXT
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.context.MStandaloneContextFactory.
Description: Declares context factory.
Tags: Global
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "standalone" (case insensitive)
Optional and unique content block: From Lexer ID contextCompilationLevel
Syntaxic Scheme:
───standalone────┬─ └─ ───────────────────────── [contextCompilationLevel] ─┬─ ─┘ ───
contextCompilationLevel
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.context.compile.CompilationLevel.
Description: Allows to set compilation level in context factory.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "with compilation level" (case insensitive)
Mandatory and non-unique content block: From Lexer ID compilationLevel
Syntaxic Scheme:
───with compilation level───[compilationLevel]───
name
Lexer type: ValueLexer.
Returning type: class java.lang.String.
Description: Declares the ruleset name.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "name is" (case insensitive)
Mandatory and non-unique content block: From Lexer ID String
Syntaxic Scheme:
───name is───[String]───
stopAtFirstValidatedCondition
Lexer type: ValueLexer.
Returning type: class java.lang.Boolean.
Description: Declares if execution stops after first validated rule.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "stop at first validated condition is" (case insensitive)
Mandatory and non-unique content block: From Lexer ID Boolean
Syntaxic Scheme:
───stop at first validated condition is───[Boolean]───
resetCacheAtEachLoop
Lexer type: ValueLexer.
Returning type: class java.lang.Boolean.
Description: Declares if cache is reset at each iteration in a loop.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "reset cache at each loop is" (case insensitive)
Mandatory and non-unique content block: From Lexer ID Boolean
Syntaxic Scheme:
───reset cache at each loop is───[Boolean]───
overrideCompilationLevel
Lexer type: ValueLexer.
Returning type: class com.massa.mrules.context.compile.CompilationLevel.
Description: Allows to override compilation level in a block.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "override compilation level with" (case insensitive)
Mandatory and non-unique content block: From Lexer ID compilationLevel
Syntaxic Scheme:
───override compilation level with───[compilationLevel]───
compilationLevel
Lexer type: EnumLexer.
Returning type: class com.massa.mrules.context.compile.CompilationLevel.
Description: Parses a compilation level.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with one of these fixed Strings:
Possible values based on the Enum class "class com.massa.mrules.context.compile.CompilationLevel" )
Syntaxic Scheme:
────┬─ └─ STANDARD LIGHT─── ─┬─ ─┘ ───
classImport
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.set.LocalImportHolder.
Description: Declares a local import of a specific class.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "import class" (case insensitive)
Mandatory and unique content block: From Lexer ID ClassForImport
Syntaxic Scheme:
───import class───[ClassForImport]───
packageImport
Lexer type: ObjectLexer.
Returning type: class com.massa.mrules.set.LocalImportHolder.
Description: Declares a local import of all classes in a specific package.
Tags: Global
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "import package" (case insensitive)
Mandatory and unique content block: From Lexer ID PackageForImport
Syntaxic Scheme:
───import package───[PackageForImport]───
setProperty
Lexer type: MappedPropertyLexer.
Returning type: interface java.util.Map$Entry.
Description: Declares a rule set custom property.
Tags: Global
This lexer can not be used as root.
Content is ordered.
Content details :
Starts with a fixed String: "set property" (case insensitive)
Mandatory and unique content block: From Lexer ID String
Mandatory and unique content block: Anonymous lexer
Lexer type: MatcherLexer.
Returning type: class java.lang.String.
Content is not ordered.
Content details :
Starts with a fixed String: "as" (case insensitive)
Mandatory and unique content block: From Lexer IDs [RawString, String]
Syntaxic Scheme:
───set property───[String]───as────┬─ └─ [RawString] [String]─── ─┬─ ─┘ ───
NextSpace
Lexer type: NextSpaceLexer.
Returning type: class java.lang.String.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Content details :
Reads until: Any white character.
Syntaxic Scheme:
───<<Any character except white spaces>>───
Class
Lexer type: NextCharLexer.
Returning type: class java.lang.String.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Content details :
Reads until: End of class name is detected.
no opSyntaxic Scheme:
───Any character until end of class name is detected───
ClassForImport
Lexer type: NextCharLexer.
Returning type: class java.lang.String.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Content details :
Reads until: End of class name is detected.
no opSyntaxic Scheme:
───Any character until end of class name is detected───
PackageForImport
Lexer type: NextCharLexer.
Returning type: class java.lang.String.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Content details :
Reads until: <<Any character except regex "[^\w$.]" or white spaces>>.
no opSyntaxic Scheme:
───<<Any character except regex "[^\w$.]" or white spaces>>───
String
Lexer type: StringLexer.
Returning type: class java.lang.String.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with text matching the following regular expression: "['"]" (without additional validator)
Syntaxic Scheme:
───['"]───
RawString
Lexer type: TextLexer.
Returning type: class java.lang.String.
Description: Allows to use raw sting litterals, which are opened by 3 or more double quotes, and closed by the same numer of double quotes.
Raw sting litterals can be empty, or start / end with double quotes, by using the escape character '\', just after the opening quotes or just before the ending quotes.
These escape character will always be suppressed. Example :
- """\""" or """\\""" : Empty String.
- """\\\""" : String with value «\».
- """This is a Raw String Litteral""" or """\This is a Raw String Litteral\""" : Represents the same value : «This is a Raw String Litteral».
- """"\"Raw String Litteral" can begin with """\""""" : Represents the value «"Raw String Litteral" can begin with """»
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with text matching the following regular expression: """""*" (without additional validator)
Matched start content is not kept.
Matched end content is not kept.
Comments are deactivated.
Ends with a fixed pattern based on matched start content: {{START_MATCH}} (case insensitive)
Syntaxic Scheme:
───""""*───{{START_MATCH}}───
Integer
Lexer type: IntegerLexer.
Returning type: class java.math.BigInteger.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with text matching the following regular expression: "\-?[0-9][0-9]*" (without additional validator)
Syntaxic Scheme:
───\-?[0-9][0-9]*───
Decimal
Lexer type: DecimalLexer.
Returning type: class java.math.BigDecimal.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with text matching the following regular expression: "\-?[0-9][0-9]*\.[0-9][0-9]*" (without additional validator)
Syntaxic Scheme:
───\-?[0-9][0-9]*\.[0-9][0-9]*───
Character
Lexer type: CharacterLexer.
Returning type: class java.lang.Character.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Content details :
Starts with a fixed String: "'" (case insensitive)
Syntaxic Scheme:
───'───
Null
Lexer type: NullLexer.
Returning type: interface javax.lang.model.type.NullType.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Accepted null values: null;nothing.
Syntaxic Scheme:
────┬─ └─ null─── nothing ─┬─ ─┘ ───
Boolean
Lexer type: BooleanLexer.
Returning type: class java.lang.Boolean.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Accepted true values: yes;true.
Accepted false values: no;false.
Syntaxic Scheme:
────┬─ ├─ ├─ └─ no─── yes── true─ false ─┬─ ─┤ ─┤ ─┘ ───
Activation
Lexer type: BooleanLexer.
Returning type: class java.lang.Boolean.
Tags: Primitives
This lexer can not be used as root.
Content is not ordered.
Accepted true values: enabled;activated.
Accepted false values: disabled;deactivated.
Syntaxic Scheme:
────┬─ ├─ ├─ └─ disabled─── enabled──── deactivated activated── ─┬─ ─┤ ─┤ ─┘ ───