Skip to content

Commit 191d26b

Browse files
committed
Adds support for time literals in SOQL queries
1 parent 639690e commit 191d26b

File tree

10 files changed

+3763
-3720
lines changed

10 files changed

+3763
-3720
lines changed

js/apex-reflection-node/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@cparra/apex-reflection",
3-
"version": "2.16.0",
3+
"version": "2.16.1",
44
"description": "",
55
"main": "index.js",
66
"scripts": {

lib/src/antlr/grammars/apex/ApexLexer.dart

Lines changed: 1827 additions & 1817 deletions
Large diffs are not rendered by default.

lib/src/antlr/grammars/apex/ApexLexer.g4

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -232,9 +232,10 @@ NEXT_N_FISCAL_YEARS_N : 'next_n_fiscal_years';
232232
LAST_N_FISCAL_YEARS_N : 'last_n_fiscal_years';
233233
N_FISCAL_YEARS_AGO_N : 'n_fiscal_years_ago';
234234

235-
// SOQL Date literal
235+
// SOQL Date and Time literals
236236
DateLiteral: Digit Digit Digit Digit '-' Digit Digit '-' Digit Digit;
237-
DateTimeLiteral: DateLiteral 't' Digit Digit ':' Digit Digit ':' Digit Digit ('z' | (('+' | '-') Digit+ ( ':' Digit+)? ));
237+
TimeLiteral: Digit Digit ':' Digit Digit ':' Digit Digit ('.' Digit+ )? ('z' | (('+' | '-') Digit+ ( ':' Digit+)? ));
238+
DateTimeLiteral: DateLiteral 't' TimeLiteral;
238239

239240
// SOQL Currency literal
240241
// (NOTE: this is also a valid Identifier)

lib/src/antlr/grammars/apex/ApexLexer.interp

Lines changed: 4 additions & 1 deletion
Large diffs are not rendered by default.

lib/src/antlr/grammars/apex/ApexLexer.tokens

Lines changed: 143 additions & 142 deletions
Original file line numberDiff line numberDiff line change
@@ -173,85 +173,86 @@ NEXT_N_FISCAL_YEARS_N=172
173173
LAST_N_FISCAL_YEARS_N=173
174174
N_FISCAL_YEARS_AGO_N=174
175175
DateLiteral=175
176-
DateTimeLiteral=176
177-
IntegralCurrencyLiteral=177
178-
FIND=178
179-
EMAIL=179
180-
NAME=180
181-
PHONE=181
182-
SIDEBAR=182
183-
FIELDS=183
184-
METADATA=184
185-
PRICEBOOKID=185
186-
NETWORK=186
187-
SNIPPET=187
188-
TARGET_LENGTH=188
189-
DIVISION=189
190-
RETURNING=190
191-
LISTVIEW=191
192-
FindLiteral=192
193-
IntegerLiteral=193
194-
LongLiteral=194
195-
NumberLiteral=195
196-
BooleanLiteral=196
197-
StringLiteral=197
198-
NullLiteral=198
199-
LPAREN=199
200-
RPAREN=200
201-
LBRACE=201
202-
RBRACE=202
203-
LBRACK=203
204-
RBRACK=204
205-
SEMI=205
206-
COMMA=206
207-
DOT=207
208-
ASSIGN=208
209-
GT=209
210-
LT=210
211-
BANG=211
212-
TILDE=212
213-
QUESTIONDOT=213
214-
QUESTION=214
215-
COLON=215
216-
EQUAL=216
217-
TRIPLEEQUAL=217
218-
NOTEQUAL=218
219-
LESSANDGREATER=219
220-
TRIPLENOTEQUAL=220
221-
AND=221
222-
OR=222
223-
INC=223
224-
DEC=224
225-
ADD=225
226-
SUB=226
227-
MUL=227
228-
DIV=228
229-
BITAND=229
230-
BITOR=230
231-
CARET=231
232-
MOD=232
233-
MAPTO=233
234-
NULL_COALESCE=234
235-
ADD_ASSIGN=235
236-
SUB_ASSIGN=236
237-
MUL_ASSIGN=237
238-
DIV_ASSIGN=238
239-
AND_ASSIGN=239
240-
OR_ASSIGN=240
241-
XOR_ASSIGN=241
242-
MOD_ASSIGN=242
243-
LSHIFT_ASSIGN=243
244-
RSHIFT_ASSIGN=244
245-
URSHIFT_ASSIGN=245
246-
ATSIGN=246
247-
UNDERSCORE=247
248-
Identifier=248
249-
START_GROUP_COMMENT=249
250-
END_GROUP_COMMENT=250
251-
DOC_COMMENT=251
252-
WS=252
253-
COMMENT=253
254-
LINE_COMMENT=254
176+
TimeLiteral=176
177+
DateTimeLiteral=177
178+
IntegralCurrencyLiteral=178
179+
FIND=179
180+
EMAIL=180
181+
NAME=181
182+
PHONE=182
183+
SIDEBAR=183
184+
FIELDS=184
185+
METADATA=185
186+
PRICEBOOKID=186
187+
NETWORK=187
188+
SNIPPET=188
189+
TARGET_LENGTH=189
190+
DIVISION=190
191+
RETURNING=191
192+
LISTVIEW=192
193+
FindLiteral=193
194+
IntegerLiteral=194
195+
LongLiteral=195
196+
NumberLiteral=196
197+
BooleanLiteral=197
198+
StringLiteral=198
199+
NullLiteral=199
200+
LPAREN=200
201+
RPAREN=201
202+
LBRACE=202
203+
RBRACE=203
204+
LBRACK=204
205+
RBRACK=205
206+
SEMI=206
207+
COMMA=207
208+
DOT=208
209+
ASSIGN=209
210+
GT=210
211+
LT=211
212+
BANG=212
213+
TILDE=213
214+
QUESTIONDOT=214
215+
QUESTION=215
216+
COLON=216
217+
EQUAL=217
218+
TRIPLEEQUAL=218
219+
NOTEQUAL=219
220+
LESSANDGREATER=220
221+
TRIPLENOTEQUAL=221
222+
AND=222
223+
OR=223
224+
INC=224
225+
DEC=225
226+
ADD=226
227+
SUB=227
228+
MUL=228
229+
DIV=229
230+
BITAND=230
231+
BITOR=231
232+
CARET=232
233+
MOD=233
234+
MAPTO=234
235+
NULL_COALESCE=235
236+
ADD_ASSIGN=236
237+
SUB_ASSIGN=237
238+
MUL_ASSIGN=238
239+
DIV_ASSIGN=239
240+
AND_ASSIGN=240
241+
OR_ASSIGN=241
242+
XOR_ASSIGN=242
243+
MOD_ASSIGN=243
244+
LSHIFT_ASSIGN=244
245+
RSHIFT_ASSIGN=245
246+
URSHIFT_ASSIGN=246
247+
ATSIGN=247
248+
UNDERSCORE=248
249+
Identifier=249
250+
START_GROUP_COMMENT=250
251+
END_GROUP_COMMENT=251
252+
DOC_COMMENT=252
253+
WS=253
254+
COMMENT=254
255+
LINE_COMMENT=255
255256
'abstract'=1
256257
'after'=2
257258
'before'=3
@@ -426,66 +427,66 @@ LINE_COMMENT=254
426427
'next_n_fiscal_years'=172
427428
'last_n_fiscal_years'=173
428429
'n_fiscal_years_ago'=174
429-
'find'=178
430-
'email'=179
431-
'name'=180
432-
'phone'=181
433-
'sidebar'=182
434-
'fields'=183
435-
'metadata'=184
436-
'pricebookid'=185
437-
'network'=186
438-
'snippet'=187
439-
'target_length'=188
440-
'division'=189
441-
'returning'=190
442-
'listview'=191
443-
'('=199
444-
')'=200
445-
'{'=201
446-
'}'=202
447-
'['=203
448-
']'=204
449-
';'=205
450-
','=206
451-
'.'=207
452-
'='=208
453-
'>'=209
454-
'<'=210
455-
'!'=211
456-
'~'=212
457-
'?.'=213
458-
'?'=214
459-
':'=215
460-
'=='=216
461-
'==='=217
462-
'!='=218
463-
'<>'=219
464-
'!=='=220
465-
'&&'=221
466-
'||'=222
467-
'++'=223
468-
'--'=224
469-
'+'=225
470-
'-'=226
471-
'*'=227
472-
'/'=228
473-
'&'=229
474-
'|'=230
475-
'^'=231
476-
'%'=232
477-
'=>'=233
478-
'??'=234
479-
'+='=235
480-
'-='=236
481-
'*='=237
482-
'/='=238
483-
'&='=239
484-
'|='=240
485-
'^='=241
486-
'%='=242
487-
'<<='=243
488-
'>>='=244
489-
'>>>='=245
490-
'@'=246
491-
'_'=247
430+
'find'=179
431+
'email'=180
432+
'name'=181
433+
'phone'=182
434+
'sidebar'=183
435+
'fields'=184
436+
'metadata'=185
437+
'pricebookid'=186
438+
'network'=187
439+
'snippet'=188
440+
'target_length'=189
441+
'division'=190
442+
'returning'=191
443+
'listview'=192
444+
'('=200
445+
')'=201
446+
'{'=202
447+
'}'=203
448+
'['=204
449+
']'=205
450+
';'=206
451+
','=207
452+
'.'=208
453+
'='=209
454+
'>'=210
455+
'<'=211
456+
'!'=212
457+
'~'=213
458+
'?.'=214
459+
'?'=215
460+
':'=216
461+
'=='=217
462+
'==='=218
463+
'!='=219
464+
'<>'=220
465+
'!=='=221
466+
'&&'=222
467+
'||'=223
468+
'++'=224
469+
'--'=225
470+
'+'=226
471+
'-'=227
472+
'*'=228
473+
'/'=229
474+
'&'=230
475+
'|'=231
476+
'^'=232
477+
'%'=233
478+
'=>'=234
479+
'??'=235
480+
'+='=236
481+
'-='=237
482+
'*='=238
483+
'/='=239
484+
'&='=240
485+
'|='=241
486+
'^='=242
487+
'%='=243
488+
'<<='=244
489+
'>>='=245
490+
'>>>='=246
491+
'@'=247
492+
'_'=248

0 commit comments

Comments
 (0)