calabash-android 0.4.0.pre10 → 0.4.0.pre11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/calabash-android/lib/TestServer.apk +0 -0
- data/lib/calabash-android/operations.rb +19 -2
- data/lib/calabash-android/steps/list_steps.rb +1 -1
- data/lib/calabash-android/steps/time_picker_steps.rb +1 -1
- data/lib/calabash-android/version.rb +1 -1
- data/test-server/AndroidManifest.xml +2 -0
- data/test-server/instrumentation-backend/antlr/UIQuery.g +13 -1
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/webview/CalabashChromeClient.java +1 -6
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/actions/webview/ExecuteJavascript.java +10 -11
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/InvocationOperation.java +26 -5
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/Query.java +6 -2
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/UIQuery.tokens +17 -14
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/antlr/UIQueryLexer.java +727 -236
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/antlr/UIQueryParser.java +212 -78
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/BeginsWithRelation.java +45 -0
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/ComparisonOperator.java +54 -0
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/ContainsRelation.java +41 -0
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/EndsWithRelation.java +42 -0
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/LikeRelation.java +79 -0
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/UIQueryASTPredicate.java +147 -0
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/UIQueryASTPredicateRelation.java +5 -0
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/UIQueryASTWith.java +3 -26
- data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/ast/UIQueryUtils.java +50 -9
- metadata +9 -2
Binary file
|
@@ -112,6 +112,22 @@ module Operations
|
|
112
112
|
map(uiquery,:query,*converted_args)
|
113
113
|
end
|
114
114
|
|
115
|
+
def each_item(opts={:query => "android.widget.ListView", :post_scroll => 0.2}, &block)
|
116
|
+
uiquery = opts[:query] || "android.widget.ListView"
|
117
|
+
skip_if = opts[:skip_if] || lambda { |i| false }
|
118
|
+
stop_when = opts[:stop_when] || lambda { |i| false }
|
119
|
+
check_element_exists(uiquery)
|
120
|
+
num_items = query(opts[:query], :adapter, :count).first
|
121
|
+
num_items.times do |item|
|
122
|
+
next if skip_if.call(item)
|
123
|
+
break if stop_when.call(item)
|
124
|
+
|
125
|
+
scroll_to_row(opts[:query], item)
|
126
|
+
sleep(opts[:post_scroll]) if opts[:post_scroll] and opts[:post_scroll] > 0
|
127
|
+
yield(item)
|
128
|
+
end
|
129
|
+
end
|
130
|
+
|
115
131
|
def ni
|
116
132
|
raise "Not yet implemented."
|
117
133
|
end
|
@@ -401,7 +417,7 @@ module Operations
|
|
401
417
|
|
402
418
|
if uiquery.instance_of? String
|
403
419
|
elements = query(uiquery, *args)
|
404
|
-
raise "No elements found" if elements.empty?
|
420
|
+
raise "No elements found. Query: #{uiquery}" if elements.empty?
|
405
421
|
element = elements.first
|
406
422
|
else
|
407
423
|
element = uiquery
|
@@ -452,7 +468,8 @@ module Operations
|
|
452
468
|
end
|
453
469
|
|
454
470
|
def scroll_to_row(uiquery,number)
|
455
|
-
|
471
|
+
query(uiquery, {:smoothScrollToPosition => number})
|
472
|
+
puts "TODO:detect end of scroll - use sleep for now"
|
456
473
|
end
|
457
474
|
|
458
475
|
def pinch(in_out,options={})
|
@@ -26,7 +26,7 @@ Then /^The "([^\"]*)" for row (\d+) should be "([^\"]*)"$/ do | view_id, row, va
|
|
26
26
|
|
27
27
|
if( response['children'] )
|
28
28
|
found_id = false
|
29
|
-
response['children']
|
29
|
+
response['children'].each do | view |
|
30
30
|
if( view['id'] == view_id )
|
31
31
|
raise "Text is #{view['text']}, expected #{value}" unless( view['text'] == value )
|
32
32
|
found_id = true
|
@@ -4,5 +4,5 @@ Given /^I set the time to "(\d\d:\d\d)" on TimePicker with index "([^\"]*)"$/ do
|
|
4
4
|
end
|
5
5
|
|
6
6
|
Given /^I set the "([^\"]*)" time to "(\d\d:\d\d)"$/ do |content_description, time|
|
7
|
-
performAction('set_time_with_description',
|
7
|
+
performAction('set_time_with_description', content_description, time)
|
8
8
|
end
|
@@ -22,6 +22,8 @@
|
|
22
22
|
|
23
23
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
24
24
|
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
|
25
|
+
<uses-permission android:name="android.permission.ACCESS_COURSE_LOCATION"/>
|
26
|
+
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
|
25
27
|
<uses-permission android:name="android.permission.INTERNET" />
|
26
28
|
|
27
29
|
</manifest>
|
@@ -35,7 +35,7 @@ query : expr (WHITE! expr)*
|
|
35
35
|
;
|
36
36
|
|
37
37
|
|
38
|
-
expr : (className | filter | visibility)
|
38
|
+
expr : (className | filter | visibility | predicate)
|
39
39
|
;
|
40
40
|
|
41
41
|
className : (WILDCARD^ | NAME^ | QUALIFIED_NAME^);
|
@@ -56,6 +56,18 @@ filter : NAME FILTER_COLON^ (INT | STRING | BOOL | NIL);
|
|
56
56
|
FILTER_COLON : ':'
|
57
57
|
;
|
58
58
|
|
59
|
+
predicate : BEGINPRED^ NAME WHITE! RELATION WHITE! (INT | STRING | BOOL | NIL) ENDPRED!
|
60
|
+
;
|
61
|
+
BEGINPRED : '{'
|
62
|
+
;
|
63
|
+
ENDPRED : '}'
|
64
|
+
;
|
65
|
+
|
66
|
+
RELATION : | '=' | '>' | '>=' | '<' | '<=' |
|
67
|
+
(( 'BEGINSWITH' | 'ENDSWITH' | 'CONTAINS' | 'LIKE'
|
68
|
+
| 'beginswith' | 'endswith' | 'contains' | 'like') ('[' ('a'..'z' | 'A'..'Z')* ']')?)
|
69
|
+
|
70
|
+
;
|
59
71
|
|
60
72
|
INT : '0'..'9'+
|
61
73
|
;
|
@@ -57,12 +57,7 @@ public class CalabashChromeClient extends WebChromeClient {
|
|
57
57
|
r.confirm("CALABASH_ACK");
|
58
58
|
System.out.println("onJsPrompt: " + message);
|
59
59
|
String jsonResponse = message.replaceFirst("calabash:", "");
|
60
|
-
|
61
|
-
scriptFuture.setResult(jsonResponse);
|
62
|
-
} catch (Exception e) {
|
63
|
-
e.printStackTrace();
|
64
|
-
scriptFuture.setResult(null);
|
65
|
-
}
|
60
|
+
scriptFuture.setResult(jsonResponse);
|
66
61
|
return true;
|
67
62
|
} else {
|
68
63
|
if (mWebChromeClient == null) {
|
@@ -29,17 +29,16 @@ public class ExecuteJavascript implements Action {
|
|
29
29
|
CalabashChromeClient ccc = list.get(0);
|
30
30
|
WebView webView = ccc.getWebView();
|
31
31
|
final String script = "javascript:(function() {"
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
+ "}())";
|
32
|
+
+ " var r;"
|
33
|
+
+ " try {"
|
34
|
+
+ " r = (function() {"
|
35
|
+
+ scriptCode + ";"
|
36
|
+
+ " }());"
|
37
|
+
+ " } catch (e) {"
|
38
|
+
+ " r = 'Exception: ' + e;"
|
39
|
+
+ " }"
|
40
|
+
+ " prompt('calabash:'+r);"
|
41
|
+
+ "}())";
|
43
42
|
|
44
43
|
System.out.println("execute javascript: " + script);
|
45
44
|
|
@@ -78,8 +78,8 @@ public class InvocationOperation implements Operation {
|
|
78
78
|
Method[] methods = o.getClass().getMethods();
|
79
79
|
for (Method m : methods) {
|
80
80
|
if (m.getName().equals(InvocationOperation.this.methodName)) {
|
81
|
-
Class<?>[] parameterTypes = m.getParameterTypes();
|
82
|
-
if (parameterTypes.length == InvocationOperation.this.classes.length && areArgumentsConvertibleTo(parameterTypes)) {
|
81
|
+
Class<?>[] parameterTypes = m.getParameterTypes();
|
82
|
+
if (parameterTypes.length == InvocationOperation.this.classes.length && areArgumentsConvertibleTo(parameterTypes)) {
|
83
83
|
try {
|
84
84
|
Object result;
|
85
85
|
if( m.getReturnType().equals(Void.TYPE)){
|
@@ -92,6 +92,7 @@ public class InvocationOperation implements Operation {
|
|
92
92
|
ref.set(result);
|
93
93
|
return;
|
94
94
|
} catch (Exception e) {
|
95
|
+
e.printStackTrace();
|
95
96
|
refEx.set(e);
|
96
97
|
return;
|
97
98
|
}
|
@@ -119,8 +120,8 @@ public class InvocationOperation implements Operation {
|
|
119
120
|
Class<?> c = o.getClass();
|
120
121
|
if (convertStringCharSeq && c.equals(String.class)) {
|
121
122
|
c = CharSequence.class;//Android API specific optimization
|
122
|
-
}
|
123
|
-
types[i] = c;
|
123
|
+
}
|
124
|
+
types[i] = mapToPrimitiveClass(c);
|
124
125
|
}
|
125
126
|
else {
|
126
127
|
types[i] = null;
|
@@ -129,19 +130,39 @@ public class InvocationOperation implements Operation {
|
|
129
130
|
return types;
|
130
131
|
}
|
131
132
|
|
133
|
+
private Class<?> mapToPrimitiveClass(Class<?> c) {
|
134
|
+
if (c.equals(Integer.class)) {
|
135
|
+
return int.class;
|
136
|
+
}
|
137
|
+
else if (c.equals(Float.class)) {
|
138
|
+
return float.class;
|
139
|
+
}
|
140
|
+
else if (c.equals(Double.class)) {
|
141
|
+
return double.class;
|
142
|
+
}
|
143
|
+
else if (c.equals(Boolean.class)) {
|
144
|
+
return boolean.class;
|
145
|
+
}
|
146
|
+
return c;
|
147
|
+
}
|
148
|
+
|
149
|
+
|
132
150
|
//parameterType.length == this.classes.length
|
133
151
|
//Note: right now we don't do any clever mapping, we
|
134
152
|
//only use Java's sub type relation: isAssigableFrom
|
135
153
|
private boolean areArgumentsConvertibleTo(Class<?>[] parameterTypes) {
|
136
154
|
for (int i=0; i < parameterTypes.length; i++) {
|
137
155
|
Class<?> typei = parameterTypes[i];
|
138
|
-
if (this.
|
156
|
+
if (this.arguments.get(i) == null) {
|
139
157
|
if (typei.isPrimitive()) {
|
140
158
|
//Can't pass null as primitive
|
141
159
|
return false;
|
142
160
|
}
|
143
161
|
continue; //can always pass null (unless primitive)
|
144
162
|
}
|
163
|
+
if (typei.isPrimitive() && typei.equals(mapToPrimitiveClass(this.classes[i]))) {
|
164
|
+
continue;
|
165
|
+
}
|
145
166
|
if (!typei.isAssignableFrom(this.classes[i])) {
|
146
167
|
return false;
|
147
168
|
}
|
data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/Query.java
CHANGED
@@ -19,6 +19,7 @@ import sh.calaba.instrumentationbackend.query.antlr.UIQueryParser;
|
|
19
19
|
import sh.calaba.instrumentationbackend.query.ast.InvalidUIQueryException;
|
20
20
|
import sh.calaba.instrumentationbackend.query.ast.UIQueryAST;
|
21
21
|
import sh.calaba.instrumentationbackend.query.ast.UIQueryASTClassName;
|
22
|
+
import sh.calaba.instrumentationbackend.query.ast.UIQueryASTPredicate;
|
22
23
|
import sh.calaba.instrumentationbackend.query.ast.UIQueryASTWith;
|
23
24
|
import sh.calaba.instrumentationbackend.query.ast.UIQueryEvaluator;
|
24
25
|
import sh.calaba.instrumentationbackend.query.ast.UIQueryVisibility;
|
@@ -142,7 +143,10 @@ public class Query {
|
|
142
143
|
return UIQueryVisibility.ALL;
|
143
144
|
|
144
145
|
case UIQueryParser.VISIBLE:
|
145
|
-
return UIQueryVisibility.VISIBLE;
|
146
|
+
return UIQueryVisibility.VISIBLE;
|
147
|
+
|
148
|
+
case UIQueryParser.BEGINPRED:
|
149
|
+
return UIQueryASTPredicate.newPredicateFromAST(step);
|
146
150
|
|
147
151
|
default:
|
148
152
|
throw new InvalidUIQueryException("Unknown query: " + stepType
|
@@ -151,7 +155,7 @@ public class Query {
|
|
151
155
|
}
|
152
156
|
|
153
157
|
}
|
154
|
-
|
158
|
+
|
155
159
|
public List<View> allVisibleViews() {
|
156
160
|
return viewFetcher.getAllViews(false);
|
157
161
|
}
|
data/test-server/instrumentation-backend/src/sh/calaba/instrumentationbackend/query/UIQuery.tokens
CHANGED
@@ -1,15 +1,18 @@
|
|
1
1
|
ALL=4
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
2
|
+
BEGINPRED=5
|
3
|
+
BOOL=6
|
4
|
+
ENDPRED=7
|
5
|
+
ESC_SEQ=8
|
6
|
+
FILTER_COLON=9
|
7
|
+
HEX_DIGIT=10
|
8
|
+
INT=11
|
9
|
+
NAME=12
|
10
|
+
NIL=13
|
11
|
+
OCTAL_ESC=14
|
12
|
+
QUALIFIED_NAME=15
|
13
|
+
RELATION=16
|
14
|
+
STRING=17
|
15
|
+
UNICODE_ESC=18
|
16
|
+
VISIBLE=19
|
17
|
+
WHITE=20
|
18
|
+
WILDCARD=21
|
@@ -1,4 +1,4 @@
|
|
1
|
-
// $ANTLR 3.4 antlr/UIQuery.g 2013-01-
|
1
|
+
// $ANTLR 3.4 antlr/UIQuery.g 2013-01-24 10:28:02
|
2
2
|
|
3
3
|
package sh.calaba.instrumentationbackend.query.antlr;
|
4
4
|
|
@@ -12,20 +12,23 @@ import java.util.ArrayList;
|
|
12
12
|
public class UIQueryLexer extends Lexer {
|
13
13
|
public static final int EOF=-1;
|
14
14
|
public static final int ALL=4;
|
15
|
-
public static final int
|
16
|
-
public static final int
|
17
|
-
public static final int
|
18
|
-
public static final int
|
19
|
-
public static final int
|
20
|
-
public static final int
|
21
|
-
public static final int
|
22
|
-
public static final int
|
23
|
-
public static final int
|
24
|
-
public static final int
|
25
|
-
public static final int
|
26
|
-
public static final int
|
27
|
-
public static final int
|
28
|
-
public static final int
|
15
|
+
public static final int BEGINPRED=5;
|
16
|
+
public static final int BOOL=6;
|
17
|
+
public static final int ENDPRED=7;
|
18
|
+
public static final int ESC_SEQ=8;
|
19
|
+
public static final int FILTER_COLON=9;
|
20
|
+
public static final int HEX_DIGIT=10;
|
21
|
+
public static final int INT=11;
|
22
|
+
public static final int NAME=12;
|
23
|
+
public static final int NIL=13;
|
24
|
+
public static final int OCTAL_ESC=14;
|
25
|
+
public static final int QUALIFIED_NAME=15;
|
26
|
+
public static final int RELATION=16;
|
27
|
+
public static final int STRING=17;
|
28
|
+
public static final int UNICODE_ESC=18;
|
29
|
+
public static final int VISIBLE=19;
|
30
|
+
public static final int WHITE=20;
|
31
|
+
public static final int WILDCARD=21;
|
29
32
|
|
30
33
|
// delegates
|
31
34
|
// delegators
|
@@ -186,27 +189,372 @@ public class UIQueryLexer extends Lexer {
|
|
186
189
|
}
|
187
190
|
// $ANTLR end "FILTER_COLON"
|
188
191
|
|
192
|
+
// $ANTLR start "BEGINPRED"
|
193
|
+
public final void mBEGINPRED() throws RecognitionException {
|
194
|
+
try {
|
195
|
+
int _type = BEGINPRED;
|
196
|
+
int _channel = DEFAULT_TOKEN_CHANNEL;
|
197
|
+
// antlr/UIQuery.g:61:11: ( '{' )
|
198
|
+
// antlr/UIQuery.g:61:13: '{'
|
199
|
+
{
|
200
|
+
match('{');
|
201
|
+
|
202
|
+
}
|
203
|
+
|
204
|
+
state.type = _type;
|
205
|
+
state.channel = _channel;
|
206
|
+
}
|
207
|
+
finally {
|
208
|
+
// do for sure before leaving
|
209
|
+
}
|
210
|
+
}
|
211
|
+
// $ANTLR end "BEGINPRED"
|
212
|
+
|
213
|
+
// $ANTLR start "ENDPRED"
|
214
|
+
public final void mENDPRED() throws RecognitionException {
|
215
|
+
try {
|
216
|
+
int _type = ENDPRED;
|
217
|
+
int _channel = DEFAULT_TOKEN_CHANNEL;
|
218
|
+
// antlr/UIQuery.g:63:11: ( '}' )
|
219
|
+
// antlr/UIQuery.g:63:13: '}'
|
220
|
+
{
|
221
|
+
match('}');
|
222
|
+
|
223
|
+
}
|
224
|
+
|
225
|
+
state.type = _type;
|
226
|
+
state.channel = _channel;
|
227
|
+
}
|
228
|
+
finally {
|
229
|
+
// do for sure before leaving
|
230
|
+
}
|
231
|
+
}
|
232
|
+
// $ANTLR end "ENDPRED"
|
233
|
+
|
234
|
+
// $ANTLR start "RELATION"
|
235
|
+
public final void mRELATION() throws RecognitionException {
|
236
|
+
try {
|
237
|
+
int _type = RELATION;
|
238
|
+
int _channel = DEFAULT_TOKEN_CHANNEL;
|
239
|
+
// antlr/UIQuery.g:66:10: (| '=' | '>' | '>=' | '<' | '<=' | ( ( 'BEGINSWITH' | 'ENDSWITH' | 'CONTAINS' | 'LIKE' | 'beginswith' | 'endswith' | 'contains' | 'like' ) ( '[' ( 'a' .. 'z' | 'A' .. 'Z' )* ']' )? ) )
|
240
|
+
int alt5=7;
|
241
|
+
switch ( input.LA(1) ) {
|
242
|
+
case '=':
|
243
|
+
{
|
244
|
+
alt5=2;
|
245
|
+
}
|
246
|
+
break;
|
247
|
+
case '>':
|
248
|
+
{
|
249
|
+
int LA5_3 = input.LA(2);
|
250
|
+
|
251
|
+
if ( (LA5_3=='=') ) {
|
252
|
+
alt5=4;
|
253
|
+
}
|
254
|
+
else {
|
255
|
+
alt5=3;
|
256
|
+
}
|
257
|
+
}
|
258
|
+
break;
|
259
|
+
case '<':
|
260
|
+
{
|
261
|
+
int LA5_4 = input.LA(2);
|
262
|
+
|
263
|
+
if ( (LA5_4=='=') ) {
|
264
|
+
alt5=6;
|
265
|
+
}
|
266
|
+
else {
|
267
|
+
alt5=5;
|
268
|
+
}
|
269
|
+
}
|
270
|
+
break;
|
271
|
+
case 'B':
|
272
|
+
case 'C':
|
273
|
+
case 'E':
|
274
|
+
case 'L':
|
275
|
+
case 'b':
|
276
|
+
case 'c':
|
277
|
+
case 'e':
|
278
|
+
case 'l':
|
279
|
+
{
|
280
|
+
alt5=7;
|
281
|
+
}
|
282
|
+
break;
|
283
|
+
default:
|
284
|
+
alt5=1;
|
285
|
+
}
|
286
|
+
|
287
|
+
switch (alt5) {
|
288
|
+
case 1 :
|
289
|
+
// antlr/UIQuery.g:66:12:
|
290
|
+
{
|
291
|
+
}
|
292
|
+
break;
|
293
|
+
case 2 :
|
294
|
+
// antlr/UIQuery.g:66:14: '='
|
295
|
+
{
|
296
|
+
match('=');
|
297
|
+
|
298
|
+
}
|
299
|
+
break;
|
300
|
+
case 3 :
|
301
|
+
// antlr/UIQuery.g:66:20: '>'
|
302
|
+
{
|
303
|
+
match('>');
|
304
|
+
|
305
|
+
}
|
306
|
+
break;
|
307
|
+
case 4 :
|
308
|
+
// antlr/UIQuery.g:66:26: '>='
|
309
|
+
{
|
310
|
+
match(">=");
|
311
|
+
|
312
|
+
|
313
|
+
|
314
|
+
}
|
315
|
+
break;
|
316
|
+
case 5 :
|
317
|
+
// antlr/UIQuery.g:66:33: '<'
|
318
|
+
{
|
319
|
+
match('<');
|
320
|
+
|
321
|
+
}
|
322
|
+
break;
|
323
|
+
case 6 :
|
324
|
+
// antlr/UIQuery.g:66:39: '<='
|
325
|
+
{
|
326
|
+
match("<=");
|
327
|
+
|
328
|
+
|
329
|
+
|
330
|
+
}
|
331
|
+
break;
|
332
|
+
case 7 :
|
333
|
+
// antlr/UIQuery.g:67:4: ( ( 'BEGINSWITH' | 'ENDSWITH' | 'CONTAINS' | 'LIKE' | 'beginswith' | 'endswith' | 'contains' | 'like' ) ( '[' ( 'a' .. 'z' | 'A' .. 'Z' )* ']' )? )
|
334
|
+
{
|
335
|
+
// antlr/UIQuery.g:67:4: ( ( 'BEGINSWITH' | 'ENDSWITH' | 'CONTAINS' | 'LIKE' | 'beginswith' | 'endswith' | 'contains' | 'like' ) ( '[' ( 'a' .. 'z' | 'A' .. 'Z' )* ']' )? )
|
336
|
+
// antlr/UIQuery.g:67:5: ( 'BEGINSWITH' | 'ENDSWITH' | 'CONTAINS' | 'LIKE' | 'beginswith' | 'endswith' | 'contains' | 'like' ) ( '[' ( 'a' .. 'z' | 'A' .. 'Z' )* ']' )?
|
337
|
+
{
|
338
|
+
// antlr/UIQuery.g:67:5: ( 'BEGINSWITH' | 'ENDSWITH' | 'CONTAINS' | 'LIKE' | 'beginswith' | 'endswith' | 'contains' | 'like' )
|
339
|
+
int alt2=8;
|
340
|
+
switch ( input.LA(1) ) {
|
341
|
+
case 'B':
|
342
|
+
{
|
343
|
+
alt2=1;
|
344
|
+
}
|
345
|
+
break;
|
346
|
+
case 'E':
|
347
|
+
{
|
348
|
+
alt2=2;
|
349
|
+
}
|
350
|
+
break;
|
351
|
+
case 'C':
|
352
|
+
{
|
353
|
+
alt2=3;
|
354
|
+
}
|
355
|
+
break;
|
356
|
+
case 'L':
|
357
|
+
{
|
358
|
+
alt2=4;
|
359
|
+
}
|
360
|
+
break;
|
361
|
+
case 'b':
|
362
|
+
{
|
363
|
+
alt2=5;
|
364
|
+
}
|
365
|
+
break;
|
366
|
+
case 'e':
|
367
|
+
{
|
368
|
+
alt2=6;
|
369
|
+
}
|
370
|
+
break;
|
371
|
+
case 'c':
|
372
|
+
{
|
373
|
+
alt2=7;
|
374
|
+
}
|
375
|
+
break;
|
376
|
+
case 'l':
|
377
|
+
{
|
378
|
+
alt2=8;
|
379
|
+
}
|
380
|
+
break;
|
381
|
+
default:
|
382
|
+
NoViableAltException nvae =
|
383
|
+
new NoViableAltException("", 2, 0, input);
|
384
|
+
|
385
|
+
throw nvae;
|
386
|
+
|
387
|
+
}
|
388
|
+
|
389
|
+
switch (alt2) {
|
390
|
+
case 1 :
|
391
|
+
// antlr/UIQuery.g:67:7: 'BEGINSWITH'
|
392
|
+
{
|
393
|
+
match("BEGINSWITH");
|
394
|
+
|
395
|
+
|
396
|
+
|
397
|
+
}
|
398
|
+
break;
|
399
|
+
case 2 :
|
400
|
+
// antlr/UIQuery.g:67:22: 'ENDSWITH'
|
401
|
+
{
|
402
|
+
match("ENDSWITH");
|
403
|
+
|
404
|
+
|
405
|
+
|
406
|
+
}
|
407
|
+
break;
|
408
|
+
case 3 :
|
409
|
+
// antlr/UIQuery.g:67:35: 'CONTAINS'
|
410
|
+
{
|
411
|
+
match("CONTAINS");
|
412
|
+
|
413
|
+
|
414
|
+
|
415
|
+
}
|
416
|
+
break;
|
417
|
+
case 4 :
|
418
|
+
// antlr/UIQuery.g:67:48: 'LIKE'
|
419
|
+
{
|
420
|
+
match("LIKE");
|
421
|
+
|
422
|
+
|
423
|
+
|
424
|
+
}
|
425
|
+
break;
|
426
|
+
case 5 :
|
427
|
+
// antlr/UIQuery.g:68:12: 'beginswith'
|
428
|
+
{
|
429
|
+
match("beginswith");
|
430
|
+
|
431
|
+
|
432
|
+
|
433
|
+
}
|
434
|
+
break;
|
435
|
+
case 6 :
|
436
|
+
// antlr/UIQuery.g:68:27: 'endswith'
|
437
|
+
{
|
438
|
+
match("endswith");
|
439
|
+
|
440
|
+
|
441
|
+
|
442
|
+
}
|
443
|
+
break;
|
444
|
+
case 7 :
|
445
|
+
// antlr/UIQuery.g:68:40: 'contains'
|
446
|
+
{
|
447
|
+
match("contains");
|
448
|
+
|
449
|
+
|
450
|
+
|
451
|
+
}
|
452
|
+
break;
|
453
|
+
case 8 :
|
454
|
+
// antlr/UIQuery.g:68:53: 'like'
|
455
|
+
{
|
456
|
+
match("like");
|
457
|
+
|
458
|
+
|
459
|
+
|
460
|
+
}
|
461
|
+
break;
|
462
|
+
|
463
|
+
}
|
464
|
+
|
465
|
+
|
466
|
+
// antlr/UIQuery.g:68:61: ( '[' ( 'a' .. 'z' | 'A' .. 'Z' )* ']' )?
|
467
|
+
int alt4=2;
|
468
|
+
int LA4_0 = input.LA(1);
|
469
|
+
|
470
|
+
if ( (LA4_0=='[') ) {
|
471
|
+
alt4=1;
|
472
|
+
}
|
473
|
+
switch (alt4) {
|
474
|
+
case 1 :
|
475
|
+
// antlr/UIQuery.g:68:62: '[' ( 'a' .. 'z' | 'A' .. 'Z' )* ']'
|
476
|
+
{
|
477
|
+
match('[');
|
478
|
+
|
479
|
+
// antlr/UIQuery.g:68:66: ( 'a' .. 'z' | 'A' .. 'Z' )*
|
480
|
+
loop3:
|
481
|
+
do {
|
482
|
+
int alt3=2;
|
483
|
+
int LA3_0 = input.LA(1);
|
484
|
+
|
485
|
+
if ( ((LA3_0 >= 'A' && LA3_0 <= 'Z')||(LA3_0 >= 'a' && LA3_0 <= 'z')) ) {
|
486
|
+
alt3=1;
|
487
|
+
}
|
488
|
+
|
489
|
+
|
490
|
+
switch (alt3) {
|
491
|
+
case 1 :
|
492
|
+
// antlr/UIQuery.g:
|
493
|
+
{
|
494
|
+
if ( (input.LA(1) >= 'A' && input.LA(1) <= 'Z')||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
|
495
|
+
input.consume();
|
496
|
+
}
|
497
|
+
else {
|
498
|
+
MismatchedSetException mse = new MismatchedSetException(null,input);
|
499
|
+
recover(mse);
|
500
|
+
throw mse;
|
501
|
+
}
|
502
|
+
|
503
|
+
|
504
|
+
}
|
505
|
+
break;
|
506
|
+
|
507
|
+
default :
|
508
|
+
break loop3;
|
509
|
+
}
|
510
|
+
} while (true);
|
511
|
+
|
512
|
+
|
513
|
+
match(']');
|
514
|
+
|
515
|
+
}
|
516
|
+
break;
|
517
|
+
|
518
|
+
}
|
519
|
+
|
520
|
+
|
521
|
+
}
|
522
|
+
|
523
|
+
|
524
|
+
}
|
525
|
+
break;
|
526
|
+
|
527
|
+
}
|
528
|
+
state.type = _type;
|
529
|
+
state.channel = _channel;
|
530
|
+
}
|
531
|
+
finally {
|
532
|
+
// do for sure before leaving
|
533
|
+
}
|
534
|
+
}
|
535
|
+
// $ANTLR end "RELATION"
|
536
|
+
|
189
537
|
// $ANTLR start "INT"
|
190
538
|
public final void mINT() throws RecognitionException {
|
191
539
|
try {
|
192
540
|
int _type = INT;
|
193
541
|
int _channel = DEFAULT_TOKEN_CHANNEL;
|
194
|
-
// antlr/UIQuery.g:
|
195
|
-
// antlr/UIQuery.g:
|
542
|
+
// antlr/UIQuery.g:72:5: ( ( '0' .. '9' )+ )
|
543
|
+
// antlr/UIQuery.g:72:7: ( '0' .. '9' )+
|
196
544
|
{
|
197
|
-
// antlr/UIQuery.g:
|
198
|
-
int
|
199
|
-
|
545
|
+
// antlr/UIQuery.g:72:7: ( '0' .. '9' )+
|
546
|
+
int cnt6=0;
|
547
|
+
loop6:
|
200
548
|
do {
|
201
|
-
int
|
202
|
-
int
|
549
|
+
int alt6=2;
|
550
|
+
int LA6_0 = input.LA(1);
|
203
551
|
|
204
|
-
if ( ((
|
205
|
-
|
552
|
+
if ( ((LA6_0 >= '0' && LA6_0 <= '9')) ) {
|
553
|
+
alt6=1;
|
206
554
|
}
|
207
555
|
|
208
556
|
|
209
|
-
switch (
|
557
|
+
switch (alt6) {
|
210
558
|
case 1 :
|
211
559
|
// antlr/UIQuery.g:
|
212
560
|
{
|
@@ -224,12 +572,12 @@ public class UIQueryLexer extends Lexer {
|
|
224
572
|
break;
|
225
573
|
|
226
574
|
default :
|
227
|
-
if (
|
575
|
+
if ( cnt6 >= 1 ) break loop6;
|
228
576
|
EarlyExitException eee =
|
229
|
-
new EarlyExitException(
|
577
|
+
new EarlyExitException(6, input);
|
230
578
|
throw eee;
|
231
579
|
}
|
232
|
-
|
580
|
+
cnt6++;
|
233
581
|
} while (true);
|
234
582
|
|
235
583
|
|
@@ -249,26 +597,26 @@ public class UIQueryLexer extends Lexer {
|
|
249
597
|
try {
|
250
598
|
int _type = BOOL;
|
251
599
|
int _channel = DEFAULT_TOKEN_CHANNEL;
|
252
|
-
// antlr/UIQuery.g:
|
253
|
-
int
|
254
|
-
int
|
600
|
+
// antlr/UIQuery.g:75:6: ( 'true' | 'false' )
|
601
|
+
int alt7=2;
|
602
|
+
int LA7_0 = input.LA(1);
|
255
603
|
|
256
|
-
if ( (
|
257
|
-
|
604
|
+
if ( (LA7_0=='t') ) {
|
605
|
+
alt7=1;
|
258
606
|
}
|
259
|
-
else if ( (
|
260
|
-
|
607
|
+
else if ( (LA7_0=='f') ) {
|
608
|
+
alt7=2;
|
261
609
|
}
|
262
610
|
else {
|
263
611
|
NoViableAltException nvae =
|
264
|
-
new NoViableAltException("",
|
612
|
+
new NoViableAltException("", 7, 0, input);
|
265
613
|
|
266
614
|
throw nvae;
|
267
615
|
|
268
616
|
}
|
269
|
-
switch (
|
617
|
+
switch (alt7) {
|
270
618
|
case 1 :
|
271
|
-
// antlr/UIQuery.g:
|
619
|
+
// antlr/UIQuery.g:75:8: 'true'
|
272
620
|
{
|
273
621
|
match("true");
|
274
622
|
|
@@ -277,7 +625,7 @@ public class UIQueryLexer extends Lexer {
|
|
277
625
|
}
|
278
626
|
break;
|
279
627
|
case 2 :
|
280
|
-
// antlr/UIQuery.g:
|
628
|
+
// antlr/UIQuery.g:75:17: 'false'
|
281
629
|
{
|
282
630
|
match("false");
|
283
631
|
|
@@ -301,22 +649,22 @@ public class UIQueryLexer extends Lexer {
|
|
301
649
|
try {
|
302
650
|
int _type = NIL;
|
303
651
|
int _channel = DEFAULT_TOKEN_CHANNEL;
|
304
|
-
// antlr/UIQuery.g:
|
305
|
-
int
|
306
|
-
int
|
652
|
+
// antlr/UIQuery.g:78:5: ( 'nil' | 'null' )
|
653
|
+
int alt8=2;
|
654
|
+
int LA8_0 = input.LA(1);
|
307
655
|
|
308
|
-
if ( (
|
309
|
-
int
|
656
|
+
if ( (LA8_0=='n') ) {
|
657
|
+
int LA8_1 = input.LA(2);
|
310
658
|
|
311
|
-
if ( (
|
312
|
-
|
659
|
+
if ( (LA8_1=='i') ) {
|
660
|
+
alt8=1;
|
313
661
|
}
|
314
|
-
else if ( (
|
315
|
-
|
662
|
+
else if ( (LA8_1=='u') ) {
|
663
|
+
alt8=2;
|
316
664
|
}
|
317
665
|
else {
|
318
666
|
NoViableAltException nvae =
|
319
|
-
new NoViableAltException("",
|
667
|
+
new NoViableAltException("", 8, 1, input);
|
320
668
|
|
321
669
|
throw nvae;
|
322
670
|
|
@@ -324,14 +672,14 @@ public class UIQueryLexer extends Lexer {
|
|
324
672
|
}
|
325
673
|
else {
|
326
674
|
NoViableAltException nvae =
|
327
|
-
new NoViableAltException("",
|
675
|
+
new NoViableAltException("", 8, 0, input);
|
328
676
|
|
329
677
|
throw nvae;
|
330
678
|
|
331
679
|
}
|
332
|
-
switch (
|
680
|
+
switch (alt8) {
|
333
681
|
case 1 :
|
334
|
-
// antlr/UIQuery.g:
|
682
|
+
// antlr/UIQuery.g:78:7: 'nil'
|
335
683
|
{
|
336
684
|
match("nil");
|
337
685
|
|
@@ -340,7 +688,7 @@ public class UIQueryLexer extends Lexer {
|
|
340
688
|
}
|
341
689
|
break;
|
342
690
|
case 2 :
|
343
|
-
// antlr/UIQuery.g:
|
691
|
+
// antlr/UIQuery.g:78:15: 'null'
|
344
692
|
{
|
345
693
|
match("null");
|
346
694
|
|
@@ -364,8 +712,8 @@ public class UIQueryLexer extends Lexer {
|
|
364
712
|
try {
|
365
713
|
int _type = NAME;
|
366
714
|
int _channel = DEFAULT_TOKEN_CHANNEL;
|
367
|
-
// antlr/UIQuery.g:
|
368
|
-
// antlr/UIQuery.g:
|
715
|
+
// antlr/UIQuery.g:81:7: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )* )
|
716
|
+
// antlr/UIQuery.g:81:9: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )*
|
369
717
|
{
|
370
718
|
if ( (input.LA(1) >= 'A' && input.LA(1) <= 'Z')||input.LA(1)=='_'||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
|
371
719
|
input.consume();
|
@@ -377,18 +725,18 @@ public class UIQueryLexer extends Lexer {
|
|
377
725
|
}
|
378
726
|
|
379
727
|
|
380
|
-
// antlr/UIQuery.g:
|
381
|
-
|
728
|
+
// antlr/UIQuery.g:81:33: ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )*
|
729
|
+
loop9:
|
382
730
|
do {
|
383
|
-
int
|
384
|
-
int
|
731
|
+
int alt9=2;
|
732
|
+
int LA9_0 = input.LA(1);
|
385
733
|
|
386
|
-
if ( ((
|
387
|
-
|
734
|
+
if ( ((LA9_0 >= '0' && LA9_0 <= '9')||(LA9_0 >= 'A' && LA9_0 <= 'Z')||LA9_0=='_'||(LA9_0 >= 'a' && LA9_0 <= 'z')) ) {
|
735
|
+
alt9=1;
|
388
736
|
}
|
389
737
|
|
390
738
|
|
391
|
-
switch (
|
739
|
+
switch (alt9) {
|
392
740
|
case 1 :
|
393
741
|
// antlr/UIQuery.g:
|
394
742
|
{
|
@@ -406,7 +754,7 @@ public class UIQueryLexer extends Lexer {
|
|
406
754
|
break;
|
407
755
|
|
408
756
|
default :
|
409
|
-
break
|
757
|
+
break loop9;
|
410
758
|
}
|
411
759
|
} while (true);
|
412
760
|
|
@@ -427,28 +775,28 @@ public class UIQueryLexer extends Lexer {
|
|
427
775
|
try {
|
428
776
|
int _type = STRING;
|
429
777
|
int _channel = DEFAULT_TOKEN_CHANNEL;
|
430
|
-
// antlr/UIQuery.g:
|
431
|
-
// antlr/UIQuery.g:
|
778
|
+
// antlr/UIQuery.g:85:5: ( '\\'' ( ESC_SEQ |~ ( '\\\\' | '\\'' ) )* '\\'' )
|
779
|
+
// antlr/UIQuery.g:85:8: '\\'' ( ESC_SEQ |~ ( '\\\\' | '\\'' ) )* '\\''
|
432
780
|
{
|
433
781
|
match('\'');
|
434
782
|
|
435
|
-
// antlr/UIQuery.g:
|
436
|
-
|
783
|
+
// antlr/UIQuery.g:85:13: ( ESC_SEQ |~ ( '\\\\' | '\\'' ) )*
|
784
|
+
loop10:
|
437
785
|
do {
|
438
|
-
int
|
439
|
-
int
|
786
|
+
int alt10=3;
|
787
|
+
int LA10_0 = input.LA(1);
|
440
788
|
|
441
|
-
if ( (
|
442
|
-
|
789
|
+
if ( (LA10_0=='\\') ) {
|
790
|
+
alt10=1;
|
443
791
|
}
|
444
|
-
else if ( ((
|
445
|
-
|
792
|
+
else if ( ((LA10_0 >= '\u0000' && LA10_0 <= '&')||(LA10_0 >= '(' && LA10_0 <= '[')||(LA10_0 >= ']' && LA10_0 <= '\uFFFF')) ) {
|
793
|
+
alt10=2;
|
446
794
|
}
|
447
795
|
|
448
796
|
|
449
|
-
switch (
|
797
|
+
switch (alt10) {
|
450
798
|
case 1 :
|
451
|
-
// antlr/UIQuery.g:
|
799
|
+
// antlr/UIQuery.g:85:15: ESC_SEQ
|
452
800
|
{
|
453
801
|
mESC_SEQ();
|
454
802
|
|
@@ -456,7 +804,7 @@ public class UIQueryLexer extends Lexer {
|
|
456
804
|
}
|
457
805
|
break;
|
458
806
|
case 2 :
|
459
|
-
// antlr/UIQuery.g:
|
807
|
+
// antlr/UIQuery.g:85:25: ~ ( '\\\\' | '\\'' )
|
460
808
|
{
|
461
809
|
if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '&')||(input.LA(1) >= '(' && input.LA(1) <= '[')||(input.LA(1) >= ']' && input.LA(1) <= '\uFFFF') ) {
|
462
810
|
input.consume();
|
@@ -472,7 +820,7 @@ public class UIQueryLexer extends Lexer {
|
|
472
820
|
break;
|
473
821
|
|
474
822
|
default :
|
475
|
-
break
|
823
|
+
break loop10;
|
476
824
|
}
|
477
825
|
} while (true);
|
478
826
|
|
@@ -495,24 +843,24 @@ public class UIQueryLexer extends Lexer {
|
|
495
843
|
try {
|
496
844
|
int _type = WHITE;
|
497
845
|
int _channel = DEFAULT_TOKEN_CHANNEL;
|
498
|
-
// antlr/UIQuery.g:
|
499
|
-
// antlr/UIQuery.g:
|
846
|
+
// antlr/UIQuery.g:88:9: ( ( ' ' )+ )
|
847
|
+
// antlr/UIQuery.g:88:11: ( ' ' )+
|
500
848
|
{
|
501
|
-
// antlr/UIQuery.g:
|
502
|
-
int
|
503
|
-
|
849
|
+
// antlr/UIQuery.g:88:11: ( ' ' )+
|
850
|
+
int cnt11=0;
|
851
|
+
loop11:
|
504
852
|
do {
|
505
|
-
int
|
506
|
-
int
|
853
|
+
int alt11=2;
|
854
|
+
int LA11_0 = input.LA(1);
|
507
855
|
|
508
|
-
if ( (
|
509
|
-
|
856
|
+
if ( (LA11_0==' ') ) {
|
857
|
+
alt11=1;
|
510
858
|
}
|
511
859
|
|
512
860
|
|
513
|
-
switch (
|
861
|
+
switch (alt11) {
|
514
862
|
case 1 :
|
515
|
-
// antlr/UIQuery.g:
|
863
|
+
// antlr/UIQuery.g:88:11: ' '
|
516
864
|
{
|
517
865
|
match(' ');
|
518
866
|
|
@@ -520,12 +868,12 @@ public class UIQueryLexer extends Lexer {
|
|
520
868
|
break;
|
521
869
|
|
522
870
|
default :
|
523
|
-
if (
|
871
|
+
if ( cnt11 >= 1 ) break loop11;
|
524
872
|
EarlyExitException eee =
|
525
|
-
new EarlyExitException(
|
873
|
+
new EarlyExitException(11, input);
|
526
874
|
throw eee;
|
527
875
|
}
|
528
|
-
|
876
|
+
cnt11++;
|
529
877
|
} while (true);
|
530
878
|
|
531
879
|
|
@@ -543,7 +891,7 @@ public class UIQueryLexer extends Lexer {
|
|
543
891
|
// $ANTLR start "HEX_DIGIT"
|
544
892
|
public final void mHEX_DIGIT() throws RecognitionException {
|
545
893
|
try {
|
546
|
-
// antlr/UIQuery.g:
|
894
|
+
// antlr/UIQuery.g:91:11: ( ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' ) )
|
547
895
|
// antlr/UIQuery.g:
|
548
896
|
{
|
549
897
|
if ( (input.LA(1) >= '0' && input.LA(1) <= '9')||(input.LA(1) >= 'A' && input.LA(1) <= 'F')||(input.LA(1) >= 'a' && input.LA(1) <= 'f') ) {
|
@@ -569,11 +917,11 @@ public class UIQueryLexer extends Lexer {
|
|
569
917
|
// $ANTLR start "ESC_SEQ"
|
570
918
|
public final void mESC_SEQ() throws RecognitionException {
|
571
919
|
try {
|
572
|
-
// antlr/UIQuery.g:
|
573
|
-
int
|
574
|
-
int
|
920
|
+
// antlr/UIQuery.g:95:5: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\'' | '\\\\' ) | UNICODE_ESC | OCTAL_ESC )
|
921
|
+
int alt12=3;
|
922
|
+
int LA12_0 = input.LA(1);
|
575
923
|
|
576
|
-
if ( (
|
924
|
+
if ( (LA12_0=='\\') ) {
|
577
925
|
switch ( input.LA(2) ) {
|
578
926
|
case '\'':
|
579
927
|
case '\\':
|
@@ -583,12 +931,12 @@ public class UIQueryLexer extends Lexer {
|
|
583
931
|
case 'r':
|
584
932
|
case 't':
|
585
933
|
{
|
586
|
-
|
934
|
+
alt12=1;
|
587
935
|
}
|
588
936
|
break;
|
589
937
|
case 'u':
|
590
938
|
{
|
591
|
-
|
939
|
+
alt12=2;
|
592
940
|
}
|
593
941
|
break;
|
594
942
|
case '0':
|
@@ -600,12 +948,12 @@ public class UIQueryLexer extends Lexer {
|
|
600
948
|
case '6':
|
601
949
|
case '7':
|
602
950
|
{
|
603
|
-
|
951
|
+
alt12=3;
|
604
952
|
}
|
605
953
|
break;
|
606
954
|
default:
|
607
955
|
NoViableAltException nvae =
|
608
|
-
new NoViableAltException("",
|
956
|
+
new NoViableAltException("", 12, 1, input);
|
609
957
|
|
610
958
|
throw nvae;
|
611
959
|
|
@@ -614,14 +962,14 @@ public class UIQueryLexer extends Lexer {
|
|
614
962
|
}
|
615
963
|
else {
|
616
964
|
NoViableAltException nvae =
|
617
|
-
new NoViableAltException("",
|
965
|
+
new NoViableAltException("", 12, 0, input);
|
618
966
|
|
619
967
|
throw nvae;
|
620
968
|
|
621
969
|
}
|
622
|
-
switch (
|
970
|
+
switch (alt12) {
|
623
971
|
case 1 :
|
624
|
-
// antlr/UIQuery.g:
|
972
|
+
// antlr/UIQuery.g:95:9: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\'' | '\\\\' )
|
625
973
|
{
|
626
974
|
match('\\');
|
627
975
|
|
@@ -638,7 +986,7 @@ public class UIQueryLexer extends Lexer {
|
|
638
986
|
}
|
639
987
|
break;
|
640
988
|
case 2 :
|
641
|
-
// antlr/UIQuery.g:
|
989
|
+
// antlr/UIQuery.g:96:9: UNICODE_ESC
|
642
990
|
{
|
643
991
|
mUNICODE_ESC();
|
644
992
|
|
@@ -646,7 +994,7 @@ public class UIQueryLexer extends Lexer {
|
|
646
994
|
}
|
647
995
|
break;
|
648
996
|
case 3 :
|
649
|
-
// antlr/UIQuery.g:
|
997
|
+
// antlr/UIQuery.g:97:9: OCTAL_ESC
|
650
998
|
{
|
651
999
|
mOCTAL_ESC();
|
652
1000
|
|
@@ -666,43 +1014,43 @@ public class UIQueryLexer extends Lexer {
|
|
666
1014
|
// $ANTLR start "OCTAL_ESC"
|
667
1015
|
public final void mOCTAL_ESC() throws RecognitionException {
|
668
1016
|
try {
|
669
|
-
// antlr/UIQuery.g:
|
670
|
-
int
|
671
|
-
int
|
1017
|
+
// antlr/UIQuery.g:102:5: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
|
1018
|
+
int alt13=3;
|
1019
|
+
int LA13_0 = input.LA(1);
|
672
1020
|
|
673
|
-
if ( (
|
674
|
-
int
|
1021
|
+
if ( (LA13_0=='\\') ) {
|
1022
|
+
int LA13_1 = input.LA(2);
|
675
1023
|
|
676
|
-
if ( ((
|
677
|
-
int
|
1024
|
+
if ( ((LA13_1 >= '0' && LA13_1 <= '3')) ) {
|
1025
|
+
int LA13_2 = input.LA(3);
|
678
1026
|
|
679
|
-
if ( ((
|
680
|
-
int
|
1027
|
+
if ( ((LA13_2 >= '0' && LA13_2 <= '7')) ) {
|
1028
|
+
int LA13_4 = input.LA(4);
|
681
1029
|
|
682
|
-
if ( ((
|
683
|
-
|
1030
|
+
if ( ((LA13_4 >= '0' && LA13_4 <= '7')) ) {
|
1031
|
+
alt13=1;
|
684
1032
|
}
|
685
1033
|
else {
|
686
|
-
|
1034
|
+
alt13=2;
|
687
1035
|
}
|
688
1036
|
}
|
689
1037
|
else {
|
690
|
-
|
1038
|
+
alt13=3;
|
691
1039
|
}
|
692
1040
|
}
|
693
|
-
else if ( ((
|
694
|
-
int
|
1041
|
+
else if ( ((LA13_1 >= '4' && LA13_1 <= '7')) ) {
|
1042
|
+
int LA13_3 = input.LA(3);
|
695
1043
|
|
696
|
-
if ( ((
|
697
|
-
|
1044
|
+
if ( ((LA13_3 >= '0' && LA13_3 <= '7')) ) {
|
1045
|
+
alt13=2;
|
698
1046
|
}
|
699
1047
|
else {
|
700
|
-
|
1048
|
+
alt13=3;
|
701
1049
|
}
|
702
1050
|
}
|
703
1051
|
else {
|
704
1052
|
NoViableAltException nvae =
|
705
|
-
new NoViableAltException("",
|
1053
|
+
new NoViableAltException("", 13, 1, input);
|
706
1054
|
|
707
1055
|
throw nvae;
|
708
1056
|
|
@@ -710,14 +1058,14 @@ public class UIQueryLexer extends Lexer {
|
|
710
1058
|
}
|
711
1059
|
else {
|
712
1060
|
NoViableAltException nvae =
|
713
|
-
new NoViableAltException("",
|
1061
|
+
new NoViableAltException("", 13, 0, input);
|
714
1062
|
|
715
1063
|
throw nvae;
|
716
1064
|
|
717
1065
|
}
|
718
|
-
switch (
|
1066
|
+
switch (alt13) {
|
719
1067
|
case 1 :
|
720
|
-
// antlr/UIQuery.g:
|
1068
|
+
// antlr/UIQuery.g:102:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
|
721
1069
|
{
|
722
1070
|
match('\\');
|
723
1071
|
|
@@ -754,7 +1102,7 @@ public class UIQueryLexer extends Lexer {
|
|
754
1102
|
}
|
755
1103
|
break;
|
756
1104
|
case 2 :
|
757
|
-
// antlr/UIQuery.g:
|
1105
|
+
// antlr/UIQuery.g:103:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
|
758
1106
|
{
|
759
1107
|
match('\\');
|
760
1108
|
|
@@ -781,7 +1129,7 @@ public class UIQueryLexer extends Lexer {
|
|
781
1129
|
}
|
782
1130
|
break;
|
783
1131
|
case 3 :
|
784
|
-
// antlr/UIQuery.g:
|
1132
|
+
// antlr/UIQuery.g:104:9: '\\\\' ( '0' .. '7' )
|
785
1133
|
{
|
786
1134
|
match('\\');
|
787
1135
|
|
@@ -810,8 +1158,8 @@ public class UIQueryLexer extends Lexer {
|
|
810
1158
|
// $ANTLR start "UNICODE_ESC"
|
811
1159
|
public final void mUNICODE_ESC() throws RecognitionException {
|
812
1160
|
try {
|
813
|
-
// antlr/UIQuery.g:
|
814
|
-
// antlr/UIQuery.g:
|
1161
|
+
// antlr/UIQuery.g:109:5: ( '\\\\' 'u' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT )
|
1162
|
+
// antlr/UIQuery.g:109:9: '\\\\' 'u' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT
|
815
1163
|
{
|
816
1164
|
match('\\');
|
817
1165
|
|
@@ -840,10 +1188,10 @@ public class UIQueryLexer extends Lexer {
|
|
840
1188
|
// $ANTLR end "UNICODE_ESC"
|
841
1189
|
|
842
1190
|
public void mTokens() throws RecognitionException {
|
843
|
-
// antlr/UIQuery.g:1:8: ( WILDCARD | QUALIFIED_NAME | ALL | VISIBLE | FILTER_COLON | INT | BOOL | NIL | NAME | STRING | WHITE )
|
844
|
-
int
|
845
|
-
|
846
|
-
switch (
|
1191
|
+
// antlr/UIQuery.g:1:8: ( WILDCARD | QUALIFIED_NAME | ALL | VISIBLE | FILTER_COLON | BEGINPRED | ENDPRED | RELATION | INT | BOOL | NIL | NAME | STRING | WHITE )
|
1192
|
+
int alt14=14;
|
1193
|
+
alt14 = dfa14.predict(input);
|
1194
|
+
switch (alt14) {
|
847
1195
|
case 1 :
|
848
1196
|
// antlr/UIQuery.g:1:10: WILDCARD
|
849
1197
|
{
|
@@ -885,47 +1233,71 @@ public class UIQueryLexer extends Lexer {
|
|
885
1233
|
}
|
886
1234
|
break;
|
887
1235
|
case 6 :
|
888
|
-
// antlr/UIQuery.g:1:59:
|
1236
|
+
// antlr/UIQuery.g:1:59: BEGINPRED
|
889
1237
|
{
|
890
|
-
|
1238
|
+
mBEGINPRED();
|
891
1239
|
|
892
1240
|
|
893
1241
|
}
|
894
1242
|
break;
|
895
1243
|
case 7 :
|
896
|
-
// antlr/UIQuery.g:1:
|
1244
|
+
// antlr/UIQuery.g:1:69: ENDPRED
|
897
1245
|
{
|
898
|
-
|
1246
|
+
mENDPRED();
|
899
1247
|
|
900
1248
|
|
901
1249
|
}
|
902
1250
|
break;
|
903
1251
|
case 8 :
|
904
|
-
// antlr/UIQuery.g:1:
|
1252
|
+
// antlr/UIQuery.g:1:77: RELATION
|
905
1253
|
{
|
906
|
-
|
1254
|
+
mRELATION();
|
907
1255
|
|
908
1256
|
|
909
1257
|
}
|
910
1258
|
break;
|
911
1259
|
case 9 :
|
912
|
-
// antlr/UIQuery.g:1:
|
1260
|
+
// antlr/UIQuery.g:1:86: INT
|
913
1261
|
{
|
914
|
-
|
1262
|
+
mINT();
|
915
1263
|
|
916
1264
|
|
917
1265
|
}
|
918
1266
|
break;
|
919
1267
|
case 10 :
|
920
|
-
// antlr/UIQuery.g:1:
|
1268
|
+
// antlr/UIQuery.g:1:90: BOOL
|
921
1269
|
{
|
922
|
-
|
1270
|
+
mBOOL();
|
923
1271
|
|
924
1272
|
|
925
1273
|
}
|
926
1274
|
break;
|
927
1275
|
case 11 :
|
928
|
-
// antlr/UIQuery.g:1:
|
1276
|
+
// antlr/UIQuery.g:1:95: NIL
|
1277
|
+
{
|
1278
|
+
mNIL();
|
1279
|
+
|
1280
|
+
|
1281
|
+
}
|
1282
|
+
break;
|
1283
|
+
case 12 :
|
1284
|
+
// antlr/UIQuery.g:1:99: NAME
|
1285
|
+
{
|
1286
|
+
mNAME();
|
1287
|
+
|
1288
|
+
|
1289
|
+
}
|
1290
|
+
break;
|
1291
|
+
case 13 :
|
1292
|
+
// antlr/UIQuery.g:1:104: STRING
|
1293
|
+
{
|
1294
|
+
mSTRING();
|
1295
|
+
|
1296
|
+
|
1297
|
+
}
|
1298
|
+
break;
|
1299
|
+
case 14 :
|
1300
|
+
// antlr/UIQuery.g:1:111: WHITE
|
929
1301
|
{
|
930
1302
|
mWHITE();
|
931
1303
|
|
@@ -938,118 +1310,237 @@ public class UIQueryLexer extends Lexer {
|
|
938
1310
|
}
|
939
1311
|
|
940
1312
|
|
941
|
-
protected
|
942
|
-
static final String
|
943
|
-
"\
|
944
|
-
"\
|
945
|
-
"\
|
946
|
-
|
947
|
-
|
948
|
-
|
949
|
-
|
950
|
-
"\3\56\
|
951
|
-
|
952
|
-
|
953
|
-
"\1\uffff\3\172\
|
954
|
-
|
955
|
-
"\
|
956
|
-
|
957
|
-
|
958
|
-
"\
|
959
|
-
|
960
|
-
|
961
|
-
|
962
|
-
|
1313
|
+
protected DFA14 dfa14 = new DFA14(this);
|
1314
|
+
static final String DFA14_eotS =
|
1315
|
+
"\1\10\1\uffff\3\31\4\uffff\10\31\1\uffff\3\31\2\uffff\2\31\2\uffff"+
|
1316
|
+
"\15\31\1\66\13\31\1\102\1\31\1\uffff\4\31\1\10\3\31\1\10\1\113\1"+
|
1317
|
+
"\31\1\uffff\1\102\7\31\1\uffff\1\113\7\31\1\133\6\31\1\uffff\1\31"+
|
1318
|
+
"\2\10\1\31\2\10\2\31\2\10";
|
1319
|
+
static final String DFA14_eofS =
|
1320
|
+
"\146\uffff";
|
1321
|
+
static final String DFA14_minS =
|
1322
|
+
"\1\40\1\uffff\3\56\4\uffff\10\56\1\uffff\3\56\2\uffff\2\56\2\uffff"+
|
1323
|
+
"\33\56\1\uffff\13\56\1\uffff\10\56\1\uffff\17\56\1\uffff\12\56";
|
1324
|
+
static final String DFA14_maxS =
|
1325
|
+
"\1\175\1\uffff\3\172\4\uffff\10\172\1\uffff\3\172\2\uffff\2\172"+
|
1326
|
+
"\2\uffff\33\172\1\uffff\13\172\1\uffff\10\172\1\uffff\17\172\1\uffff"+
|
1327
|
+
"\12\172";
|
1328
|
+
static final String DFA14_acceptS =
|
1329
|
+
"\1\uffff\1\1\3\uffff\1\5\1\6\1\7\1\10\10\uffff\1\11\3\uffff\1\15"+
|
1330
|
+
"\1\16\2\uffff\1\14\1\2\33\uffff\1\3\13\uffff\1\13\10\uffff\1\12"+
|
1331
|
+
"\17\uffff\1\4\12\uffff";
|
1332
|
+
static final String DFA14_specialS =
|
1333
|
+
"\146\uffff}>";
|
1334
|
+
static final String[] DFA14_transitionS = {
|
1335
|
+
"\1\26\6\uffff\1\25\2\uffff\1\1\5\uffff\12\21\1\5\6\uffff\1\24"+
|
1336
|
+
"\1\4\1\12\1\24\1\11\6\24\1\13\16\24\4\uffff\1\24\1\uffff\1\2"+
|
1337
|
+
"\1\14\1\16\1\24\1\15\1\22\5\24\1\17\1\24\1\23\5\24\1\20\1\24"+
|
1338
|
+
"\1\3\4\24\1\6\1\uffff\1\7",
|
1339
|
+
"",
|
1340
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\13\30"+
|
1341
|
+
"\1\27\16\30",
|
1342
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\10\30"+
|
1343
|
+
"\1\33\21\30",
|
1344
|
+
"\1\32\1\uffff\12\30\7\uffff\4\30\1\34\25\30\4\uffff\1\30\1"+
|
1345
|
+
"\uffff\32\30",
|
1346
|
+
"",
|
1347
|
+
"",
|
1348
|
+
"",
|
963
1349
|
"",
|
964
|
-
"\1\
|
965
|
-
"\
|
966
|
-
"\1\
|
967
|
-
"\
|
968
|
-
"\1\
|
969
|
-
"\
|
1350
|
+
"\1\32\1\uffff\12\30\7\uffff\15\30\1\35\14\30\4\uffff\1\30\1"+
|
1351
|
+
"\uffff\32\30",
|
1352
|
+
"\1\32\1\uffff\12\30\7\uffff\16\30\1\36\13\30\4\uffff\1\30\1"+
|
1353
|
+
"\uffff\32\30",
|
1354
|
+
"\1\32\1\uffff\12\30\7\uffff\10\30\1\37\21\30\4\uffff\1\30\1"+
|
1355
|
+
"\uffff\32\30",
|
1356
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\4\30"+
|
1357
|
+
"\1\40\25\30",
|
1358
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\15\30"+
|
1359
|
+
"\1\41\14\30",
|
1360
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\16\30"+
|
1361
|
+
"\1\42\13\30",
|
1362
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\10\30"+
|
1363
|
+
"\1\43\21\30",
|
1364
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\21\30"+
|
1365
|
+
"\1\44\10\30",
|
970
1366
|
"",
|
1367
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\1\45"+
|
1368
|
+
"\31\30",
|
1369
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\10\30"+
|
1370
|
+
"\1\46\13\30\1\47\5\30",
|
1371
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
971
1372
|
"",
|
972
|
-
"\1\17\1\uffff\12\15\7\uffff\32\15\4\uffff\1\15\1\uffff\1\22"+
|
973
|
-
"\31\15",
|
974
|
-
"\1\17\1\uffff\12\15\7\uffff\32\15\4\uffff\1\15\1\uffff\10\15"+
|
975
|
-
"\1\23\13\15\1\24\5\15",
|
976
|
-
"\1\17\1\uffff\12\15\7\uffff\32\15\4\uffff\1\15\1\uffff\32\15",
|
977
1373
|
"",
|
1374
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\13\30"+
|
1375
|
+
"\1\50\16\30",
|
1376
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
978
1377
|
"",
|
979
|
-
"\1\17\1\uffff\12\15\7\uffff\32\15\4\uffff\1\15\1\uffff\13\15"+
|
980
|
-
"\1\25\16\15",
|
981
|
-
"\1\17\1\uffff\12\15\7\uffff\32\15\4\uffff\1\15\1\uffff\32\15",
|
982
1378
|
"",
|
1379
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\22\30"+
|
1380
|
+
"\1\51\7\30",
|
1381
|
+
"\1\32\1\uffff\12\30\7\uffff\6\30\1\52\23\30\4\uffff\1\30\1"+
|
1382
|
+
"\uffff\32\30",
|
1383
|
+
"\1\32\1\uffff\12\30\7\uffff\3\30\1\53\26\30\4\uffff\1\30\1"+
|
1384
|
+
"\uffff\32\30",
|
1385
|
+
"\1\32\1\uffff\12\30\7\uffff\15\30\1\54\14\30\4\uffff\1\30\1"+
|
1386
|
+
"\uffff\32\30",
|
1387
|
+
"\1\32\1\uffff\12\30\7\uffff\12\30\1\55\17\30\4\uffff\1\30\1"+
|
1388
|
+
"\uffff\32\30",
|
1389
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\6\30"+
|
1390
|
+
"\1\56\23\30",
|
1391
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\3\30"+
|
1392
|
+
"\1\57\26\30",
|
1393
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\15\30"+
|
1394
|
+
"\1\60\14\30",
|
1395
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\12\30"+
|
1396
|
+
"\1\61\17\30",
|
1397
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\24\30"+
|
1398
|
+
"\1\62\5\30",
|
1399
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\13\30"+
|
1400
|
+
"\1\63\16\30",
|
1401
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\13\30"+
|
1402
|
+
"\1\64\16\30",
|
1403
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\13\30"+
|
1404
|
+
"\1\65\16\30",
|
1405
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1406
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\10\30"+
|
1407
|
+
"\1\67\21\30",
|
1408
|
+
"\1\32\1\uffff\12\30\7\uffff\10\30\1\70\21\30\4\uffff\1\30\1"+
|
1409
|
+
"\uffff\32\30",
|
1410
|
+
"\1\32\1\uffff\12\30\7\uffff\22\30\1\71\7\30\4\uffff\1\30\1"+
|
1411
|
+
"\uffff\32\30",
|
1412
|
+
"\1\32\1\uffff\12\30\7\uffff\23\30\1\72\6\30\4\uffff\1\30\1"+
|
1413
|
+
"\uffff\32\30",
|
1414
|
+
"\1\32\1\uffff\12\30\7\uffff\4\30\1\73\25\30\4\uffff\1\30\1"+
|
1415
|
+
"\uffff\32\30",
|
1416
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\10\30"+
|
1417
|
+
"\1\74\21\30",
|
1418
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\22\30"+
|
1419
|
+
"\1\75\7\30",
|
1420
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\23\30"+
|
1421
|
+
"\1\76\6\30",
|
1422
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\4\30"+
|
1423
|
+
"\1\77\25\30",
|
1424
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\4\30"+
|
1425
|
+
"\1\100\25\30",
|
1426
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\22\30"+
|
1427
|
+
"\1\101\7\30",
|
1428
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1429
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\13\30"+
|
1430
|
+
"\1\103\16\30",
|
983
1431
|
"",
|
984
|
-
"\1\
|
985
|
-
"\1\
|
986
|
-
"\1\
|
987
|
-
"\1\
|
988
|
-
"\1\
|
989
|
-
"\
|
990
|
-
"\1\
|
991
|
-
"\
|
992
|
-
"\1\
|
993
|
-
"\1\32\
|
994
|
-
"\1\
|
995
|
-
"\1\
|
996
|
-
"\1\
|
997
|
-
"\1\
|
998
|
-
"\
|
999
|
-
"\1\
|
1000
|
-
"\1\
|
1001
|
-
"\1\
|
1002
|
-
"\1\
|
1003
|
-
"\1\40\16\15",
|
1432
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\1\30"+
|
1433
|
+
"\1\104\30\30",
|
1434
|
+
"\1\32\1\uffff\12\30\7\uffff\15\30\1\105\14\30\4\uffff\1\30"+
|
1435
|
+
"\1\uffff\32\30",
|
1436
|
+
"\1\32\1\uffff\12\30\7\uffff\26\30\1\106\3\30\4\uffff\1\30\1"+
|
1437
|
+
"\uffff\32\30",
|
1438
|
+
"\1\32\1\uffff\12\30\7\uffff\1\107\31\30\4\uffff\1\30\1\uffff"+
|
1439
|
+
"\32\30",
|
1440
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1441
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\15\30"+
|
1442
|
+
"\1\110\14\30",
|
1443
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\26\30"+
|
1444
|
+
"\1\111\3\30",
|
1445
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\1\112"+
|
1446
|
+
"\31\30",
|
1447
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1448
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1449
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\4\30"+
|
1450
|
+
"\1\114\25\30",
|
1004
1451
|
"",
|
1005
|
-
"\1\
|
1006
|
-
"\1\
|
1007
|
-
"\1\
|
1008
|
-
"\1\
|
1009
|
-
"\
|
1452
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1453
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\13\30"+
|
1454
|
+
"\1\115\16\30",
|
1455
|
+
"\1\32\1\uffff\12\30\7\uffff\22\30\1\116\7\30\4\uffff\1\30\1"+
|
1456
|
+
"\uffff\32\30",
|
1457
|
+
"\1\32\1\uffff\12\30\7\uffff\10\30\1\117\21\30\4\uffff\1\30"+
|
1458
|
+
"\1\uffff\32\30",
|
1459
|
+
"\1\32\1\uffff\12\30\7\uffff\10\30\1\120\21\30\4\uffff\1\30"+
|
1460
|
+
"\1\uffff\32\30",
|
1461
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\22\30"+
|
1462
|
+
"\1\121\7\30",
|
1463
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\10\30"+
|
1464
|
+
"\1\122\21\30",
|
1465
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\10\30"+
|
1466
|
+
"\1\123\21\30",
|
1010
1467
|
"",
|
1011
|
-
"\1\
|
1012
|
-
"\1\
|
1013
|
-
"\1\
|
1468
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1469
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\4\30"+
|
1470
|
+
"\1\124\25\30",
|
1471
|
+
"\1\32\1\uffff\12\30\7\uffff\26\30\1\125\3\30\4\uffff\1\30\1"+
|
1472
|
+
"\uffff\32\30",
|
1473
|
+
"\1\32\1\uffff\12\30\7\uffff\23\30\1\126\6\30\4\uffff\1\30\1"+
|
1474
|
+
"\uffff\32\30",
|
1475
|
+
"\1\32\1\uffff\12\30\7\uffff\15\30\1\127\14\30\4\uffff\1\30"+
|
1476
|
+
"\1\uffff\32\30",
|
1477
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\26\30"+
|
1478
|
+
"\1\130\3\30",
|
1479
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\23\30"+
|
1480
|
+
"\1\131\6\30",
|
1481
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\15\30"+
|
1482
|
+
"\1\132\14\30",
|
1483
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1484
|
+
"\1\32\1\uffff\12\30\7\uffff\10\30\1\134\21\30\4\uffff\1\30"+
|
1485
|
+
"\1\uffff\32\30",
|
1486
|
+
"\1\32\1\uffff\12\30\7\uffff\7\30\1\135\22\30\4\uffff\1\30\1"+
|
1487
|
+
"\uffff\32\30",
|
1488
|
+
"\1\32\1\uffff\12\30\7\uffff\22\30\1\136\7\30\4\uffff\1\30\1"+
|
1489
|
+
"\uffff\32\30",
|
1490
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\10\30"+
|
1491
|
+
"\1\137\21\30",
|
1492
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\7\30"+
|
1493
|
+
"\1\140\22\30",
|
1494
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\22\30"+
|
1495
|
+
"\1\141\7\30",
|
1014
1496
|
"",
|
1015
|
-
"\1\
|
1016
|
-
"\
|
1017
|
-
"\1\
|
1018
|
-
"\1\
|
1019
|
-
""
|
1497
|
+
"\1\32\1\uffff\12\30\7\uffff\23\30\1\142\6\30\4\uffff\1\30\1"+
|
1498
|
+
"\uffff\32\30",
|
1499
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1500
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1501
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\23\30"+
|
1502
|
+
"\1\143\6\30",
|
1503
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1504
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1505
|
+
"\1\32\1\uffff\12\30\7\uffff\7\30\1\144\22\30\4\uffff\1\30\1"+
|
1506
|
+
"\uffff\32\30",
|
1507
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\7\30"+
|
1508
|
+
"\1\145\22\30",
|
1509
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
1510
|
+
"\1\32\1\uffff\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30"
|
1020
1511
|
};
|
1021
1512
|
|
1022
|
-
static final short[]
|
1023
|
-
static final short[]
|
1024
|
-
static final char[]
|
1025
|
-
static final char[]
|
1026
|
-
static final short[]
|
1027
|
-
static final short[]
|
1028
|
-
static final short[][]
|
1513
|
+
static final short[] DFA14_eot = DFA.unpackEncodedString(DFA14_eotS);
|
1514
|
+
static final short[] DFA14_eof = DFA.unpackEncodedString(DFA14_eofS);
|
1515
|
+
static final char[] DFA14_min = DFA.unpackEncodedStringToUnsignedChars(DFA14_minS);
|
1516
|
+
static final char[] DFA14_max = DFA.unpackEncodedStringToUnsignedChars(DFA14_maxS);
|
1517
|
+
static final short[] DFA14_accept = DFA.unpackEncodedString(DFA14_acceptS);
|
1518
|
+
static final short[] DFA14_special = DFA.unpackEncodedString(DFA14_specialS);
|
1519
|
+
static final short[][] DFA14_transition;
|
1029
1520
|
|
1030
1521
|
static {
|
1031
|
-
int numStates =
|
1032
|
-
|
1522
|
+
int numStates = DFA14_transitionS.length;
|
1523
|
+
DFA14_transition = new short[numStates][];
|
1033
1524
|
for (int i=0; i<numStates; i++) {
|
1034
|
-
|
1525
|
+
DFA14_transition[i] = DFA.unpackEncodedString(DFA14_transitionS[i]);
|
1035
1526
|
}
|
1036
1527
|
}
|
1037
1528
|
|
1038
|
-
class
|
1529
|
+
class DFA14 extends DFA {
|
1039
1530
|
|
1040
|
-
public
|
1531
|
+
public DFA14(BaseRecognizer recognizer) {
|
1041
1532
|
this.recognizer = recognizer;
|
1042
|
-
this.decisionNumber =
|
1043
|
-
this.eot =
|
1044
|
-
this.eof =
|
1045
|
-
this.min =
|
1046
|
-
this.max =
|
1047
|
-
this.accept =
|
1048
|
-
this.special =
|
1049
|
-
this.transition =
|
1533
|
+
this.decisionNumber = 14;
|
1534
|
+
this.eot = DFA14_eot;
|
1535
|
+
this.eof = DFA14_eof;
|
1536
|
+
this.min = DFA14_min;
|
1537
|
+
this.max = DFA14_max;
|
1538
|
+
this.accept = DFA14_accept;
|
1539
|
+
this.special = DFA14_special;
|
1540
|
+
this.transition = DFA14_transition;
|
1050
1541
|
}
|
1051
1542
|
public String getDescription() {
|
1052
|
-
return "1:1: Tokens : ( WILDCARD | QUALIFIED_NAME | ALL | VISIBLE | FILTER_COLON | INT | BOOL | NIL | NAME | STRING | WHITE );";
|
1543
|
+
return "1:1: Tokens : ( WILDCARD | QUALIFIED_NAME | ALL | VISIBLE | FILTER_COLON | BEGINPRED | ENDPRED | RELATION | INT | BOOL | NIL | NAME | STRING | WHITE );";
|
1053
1544
|
}
|
1054
1545
|
}
|
1055
1546
|
|