pip_services3_expressions.calculator.parsers package
Submodules
Module contents
-
class
pip_services3_expressions.calculator.parsers.
ExpressionParser
Bases:
object
Implements an expression parser class.
-
clear
() Clears parsing results.
-
property
expression
The expression string.
-
property
initial_tokens
The list of original expression tokens.
-
property
original_tokens
-
parse_string
(expression: str) Sets a new expression string and parses it into internal byte code.
- Parameters
expression – A new expression string.
-
parse_tokens
(tokens: List[pip_services3_expressions.tokenizers.Token.Token])
-
property
result_tokens
The list of parsed expression tokens.
-
property
variable_names
The list of found variable names.
-
-
class
pip_services3_expressions.calculator.parsers.
ExpressionToken
(type: pip_services3_expressions.calculator.parsers.ExpressionTokenType.ExpressionTokenType, value: pip_services3_expressions.variants.Variant.Variant, line: int, column: int) Bases:
object
Defines an expression token holder.
-
property
column
The column number where the token is.
-
property
line
The line number where the token is.
-
property
type
The type of this token.
-
property
value
-
property
-
class
pip_services3_expressions.calculator.parsers.
ExpressionTokenType
(value) Bases:
enum.Enum
Define types of expression tokens.
-
And
= 19
-
Comma
= 32
-
Constant
= 36
-
Element
= 25
-
Equal
= 11
-
EqualLess
= 16
-
EqualMore
= 15
-
Function
= 34
-
In
= 23
-
Is
= 22
-
IsNotNull
= 31
-
IsNull
= 30
-
LeftBrace
= 1
-
LeftSquareBrace
= 3
-
Less
= 14
-
Like
= 28
-
Minus
= 6
-
More
= 13
-
Not
= 27
-
NotEqual
= 12
-
NotIn
= 24
-
NotLike
= 29
-
Null
= 26
-
Or
= 20
-
Percent
= 9
-
Plus
= 5
-
Power
= 10
-
RightBrace
= 2
-
RightSquareBrace
= 4
-
ShiftLeft
= 17
-
ShiftRight
= 18
-
Slash
= 8
-
Star
= 7
-
Unary
= 33
-
Unknown
= 0
-
Variable
= 35
-
Xor
= 21
-