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

Modified parser.

parent f2b4af54
Branches
Tags
No related merge requests found
......@@ -190,15 +190,31 @@ transaction_time returns [String tqp]
:
(
(ON | IN)
(datetime {$tqp = $datetime.text;}
(datetime {$tqp = "tr" + $datetime.dt_text;}
| entity {$tqp = $entity.ep.toString();})
) | 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)
*/
datetime
iso_datetime
:
NUM // year
(
......@@ -223,6 +239,12 @@ datetime
;
pov returns [POV filter] locals [Query.Pattern p, String o, String v, String a]
/**
* p: property
* o: operator
* v: value
* a: agg
*/
@init{
$p = null;
$o = null;
......@@ -244,8 +266,8 @@ pov returns [POV filter] locals [Query.Pattern p, String o, String v, String a]
)
| IS_NULL {$o = "0";}
| IS_NOT_NULL {$o = "!0";}
| IN datetime {$o = "("; $v=$datetime.text;}
| NEGATION IN datetime {$o = "!("; $v=$datetime.text;}
| IN datetime {$o = "("; $v="baz " + $datetime.dt_text;}
| NEGATION IN datetime {$o = "!("; $v=$datetime.dt_text;}
)?
)
|
......@@ -443,7 +465,7 @@ minmax returns [String agg]
value returns [String str]
:
number {$str = $text;}
| datetime {$str = $text;}
| datetime {$str = "v" + $text;}
| 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