Skip to content
Snippets Groups Projects
Commit dcb857a6 authored by Daniel Hornung's avatar Daniel Hornung
Browse files

Modified parser.

parent f2b4af54
No related branches found
No related tags found
No related merge requests found
...@@ -190,15 +190,31 @@ transaction_time returns [String tqp] ...@@ -190,15 +190,31 @@ transaction_time returns [String tqp]
: :
( (
(ON | IN) (ON | IN)
(datetime {$tqp = $datetime.text;} (datetime {$tqp = "tr" + $datetime.dt_text;}
| entity {$tqp = $entity.ep.toString();}) | entity {$tqp = $entity.ep.toString();})
) | TODAY {$tqp = TransactionFilter.TODAY;} ) | TODAY {$tqp = TransactionFilter.TODAY;}
; ;
datetime returns [String dt_text]
:
(
dq = dq_datetime {$dt_text = "foo " + $dq.dt_text;}
|
iso = iso_datetime {$dt_text = "bar" + $iso.text;}
)
;
dq_datetime returns [String dt_text]
:
DOUBLE_QUOTE_START
(d = iso_datetime {$dt_text = "foo";})
DOUBLE_QUOTE_END
;
/* /*
* not fully compliant with iso 8601 (TODO) * not fully compliant with iso 8601 (TODO)
*/ */
datetime iso_datetime
: :
NUM // year NUM // year
( (
...@@ -223,6 +239,12 @@ datetime ...@@ -223,6 +239,12 @@ datetime
; ;
pov returns [POV filter] locals [Query.Pattern p, String o, String v, String a] pov returns [POV filter] locals [Query.Pattern p, String o, String v, String a]
/**
* p: property
* o: operator
* v: value
* a: agg
*/
@init{ @init{
$p = null; $p = null;
$o = null; $o = null;
...@@ -244,8 +266,8 @@ pov returns [POV filter] locals [Query.Pattern p, String o, String v, String a] ...@@ -244,8 +266,8 @@ pov returns [POV filter] locals [Query.Pattern p, String o, String v, String a]
) )
| IS_NULL {$o = "0";} | IS_NULL {$o = "0";}
| IS_NOT_NULL {$o = "!0";} | IS_NOT_NULL {$o = "!0";}
| IN datetime {$o = "("; $v=$datetime.text;} | IN datetime {$o = "("; $v="baz " + $datetime.dt_text;}
| NEGATION IN datetime {$o = "!("; $v=$datetime.text;} | NEGATION IN datetime {$o = "!("; $v=$datetime.dt_text;}
)? )?
) )
| |
...@@ -443,7 +465,7 @@ minmax returns [String agg] ...@@ -443,7 +465,7 @@ minmax returns [String agg]
value returns [String str] value returns [String str]
: :
number {$str = $text;} number {$str = $text;}
| datetime {$str = $text;} | datetime {$str = "v" + $text;}
| atom {$str = $atom.ep.toString();} | atom {$str = $atom.ep.toString();}
; ;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment