Module: Sparkql::Token
- Included in:
- Lexer
- Defined in:
- lib/sparkql/token.rb
Constant Summary collapse
- SPACE =
/[\t ]+/- NEWLINE =
/\r\n|\n\r|\r|\n/- LPAREN =
/\(/- RPAREN =
/\)/- KEYWORD =
/[A-Za-z]+/- STANDARD_FIELD =
/[A-Z]+[A-Za-z0-9]*/- CUSTOM_FIELD =
/^(\"([^$."][^."]+)\".\"([^$."][^."]*)\")/- INTEGER =
/^\-?[0-9]+/- DECIMAL =
/^\-?[0-9]+\.[0-9]+([Ee]-?[0-9]{1,2})?/- CHARACTER =
/^'([^'\\]*(\\.[^'\\]*)*)'/- DATE =
/^[0-9]{4}\-[0-9]{2}\-[0-9]{2}/- TIME =
/^[0-9]{2}\:[0-9]{2}((\:[0-9]{2})(\.[0-9]{1,50})?)?/- DATETIME =
/^[0-9]{4}\-[0-9]{2}\-[0-9]{2}T[0-9]{2}\:[0-9]{2}((\:[0-9]{2})(\.[0-9]{1,50})?)?(((\+|-)[0-9]{2}\:?[0-9]{2})|Z)?/- BOOLEAN =
/^true|false/- NULL =
/NULL|null|Null/- RANGE_OPERATOR =
Reserved words
'Bt'- EQUALITY_OPERATORS =
['Eq','Ne']
- OPERATORS =
['Gt','Ge','Lt','Le'] + EQUALITY_OPERATORS
- UNARY_CONJUNCTIONS =
['Not']
- CONJUNCTIONS =
['And','Or']