kodexa 7.4.414781565138__py3-none-any.whl → 8.0.14958192442__py3-none-any.whl
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.
- kodexa/dataclasses/__init__.py +1 -1
- kodexa/model/__init__.py +2 -2
- kodexa/model/utils.py +1 -1
- kodexa/pipeline/pipeline.py +1 -1
- kodexa/platform/client.py +1 -2
- kodexa/selectors/__init__.py +1 -1
- kodexa/selectors/ast.py +371 -98
- kodexa/selectors/error.py +29 -0
- kodexa/selectors/kodexa-ast-visitor.py +268 -0
- kodexa/selectors/parser.py +91 -0
- kodexa/selectors/resources/KodexaSelector.interp +99 -0
- kodexa/selectors/resources/KodexaSelector.tokens +56 -0
- kodexa/selectors/resources/KodexaSelectorLexer.interp +119 -0
- kodexa/selectors/resources/KodexaSelectorLexer.py +204 -0
- kodexa/selectors/resources/KodexaSelectorLexer.tokens +56 -0
- kodexa/selectors/resources/KodexaSelectorListener.py +570 -0
- kodexa/selectors/resources/KodexaSelectorParser.py +3246 -0
- kodexa/selectors/resources/KodexaSelectorVisitor.py +323 -0
- kodexa/selectors/visitor.py +265 -0
- kodexa/steps/__init__.py +4 -2
- kodexa/steps/common.py +0 -68
- kodexa/testing/test_utils.py +1 -1
- {kodexa-7.4.414781565138.dist-info → kodexa-8.0.14958192442.dist-info}/METADATA +3 -1
- kodexa-8.0.14958192442.dist-info/RECORD +53 -0
- {kodexa-7.4.414781565138.dist-info → kodexa-8.0.14958192442.dist-info}/WHEEL +1 -1
- kodexa/model/model.py +0 -3259
- kodexa/model/persistence.py +0 -2017
- kodexa/selectors/core.py +0 -124
- kodexa/selectors/lexrules.py +0 -137
- kodexa/selectors/lextab.py +0 -83
- kodexa/selectors/lextab.pyi +0 -1
- kodexa/selectors/parserules.py +0 -414
- kodexa/selectors/parserules.pyi +0 -1
- kodexa/selectors/parsetab.py +0 -90
- kodexa/selectors/parsetab.pyi +0 -1
- kodexa-7.4.414781565138.dist-info/RECORD +0 -51
- {kodexa-7.4.414781565138.dist-info → kodexa-8.0.14958192442.dist-info}/LICENSE +0 -0
kodexa/selectors/parserules.py
DELETED
@@ -1,414 +0,0 @@
|
|
1
|
-
"""XPath parsing rules.
|
2
|
-
|
3
|
-
To understand how this module works, it is valuable to have a strong
|
4
|
-
understanding of the `ply <http://www.dabeaz.com/ply/>` module.
|
5
|
-
"""
|
6
|
-
|
7
|
-
from __future__ import unicode_literals
|
8
|
-
from kodexa.selectors import ast
|
9
|
-
from kodexa.selectors.lexrules import tokens
|
10
|
-
|
11
|
-
precedence = (
|
12
|
-
("left", "OR_OP"),
|
13
|
-
("left", "AND_OP"),
|
14
|
-
("left", "EQUAL_OP"),
|
15
|
-
("left", "REL_OP"),
|
16
|
-
("left", "PLUS_OP", "MINUS_OP"),
|
17
|
-
("left", "MULT_OP", "DIV_OP", "MOD_OP"),
|
18
|
-
("right", "UMINUS_OP"),
|
19
|
-
("left", "UNION_OP"),
|
20
|
-
("left", "INTERSECT_OP"),
|
21
|
-
)
|
22
|
-
|
23
|
-
|
24
|
-
#
|
25
|
-
# basic expressions
|
26
|
-
#
|
27
|
-
|
28
|
-
|
29
|
-
def p_expr_boolean(p):
|
30
|
-
"""
|
31
|
-
Expr : Expr OR_OP Expr
|
32
|
-
| Expr AND_OP Expr
|
33
|
-
| Expr EQUAL_OP Expr
|
34
|
-
| Expr REL_OP Expr
|
35
|
-
| Expr PLUS_OP Expr
|
36
|
-
| Expr MINUS_OP Expr
|
37
|
-
| Expr MULT_OP Expr
|
38
|
-
| Expr DIV_OP Expr
|
39
|
-
| Expr MOD_OP Expr
|
40
|
-
| Expr UNION_OP Expr
|
41
|
-
| Expr INTERSECT_OP Expr
|
42
|
-
"""
|
43
|
-
p[0] = ast.BinaryExpression(p[1], p[2], p[3])
|
44
|
-
|
45
|
-
|
46
|
-
def p_expr_unary(p):
|
47
|
-
"""
|
48
|
-
Expr : MINUS_OP Expr %prec UMINUS_OP
|
49
|
-
"""
|
50
|
-
p[0] = ast.UnaryExpression(p[1], p[2])
|
51
|
-
|
52
|
-
|
53
|
-
def p_expr_pipeline(p):
|
54
|
-
"""
|
55
|
-
Expr : Expr PIPELINE_OP Expr
|
56
|
-
"""
|
57
|
-
p[0] = ast.PipelineExpression(p[1], p[2], p[3])
|
58
|
-
|
59
|
-
|
60
|
-
#
|
61
|
-
# path expressions
|
62
|
-
#
|
63
|
-
|
64
|
-
|
65
|
-
def p_path_expr_binary(p):
|
66
|
-
"""
|
67
|
-
Expr : FilterExpr PATH_SEP RelativeLocationPath
|
68
|
-
| FilterExpr ABBREV_PATH_SEP RelativeLocationPath
|
69
|
-
"""
|
70
|
-
p[0] = ast.BinaryExpression(p[1], p[2], p[3])
|
71
|
-
|
72
|
-
|
73
|
-
def p_path_expr_unary(p):
|
74
|
-
"""
|
75
|
-
Expr : RelativeLocationPath
|
76
|
-
| AbsoluteLocationPath
|
77
|
-
| AbbreviatedAbsoluteLocationPath
|
78
|
-
| FilterExpr
|
79
|
-
"""
|
80
|
-
p[0] = p[1]
|
81
|
-
|
82
|
-
|
83
|
-
#
|
84
|
-
# paths
|
85
|
-
#
|
86
|
-
|
87
|
-
|
88
|
-
def p_absolute_location_path_rootonly(p):
|
89
|
-
"""
|
90
|
-
AbsoluteLocationPath : PATH_SEP
|
91
|
-
"""
|
92
|
-
p[0] = ast.AbsolutePath(p[1])
|
93
|
-
|
94
|
-
|
95
|
-
def p_absolute_location_path_subpath(p):
|
96
|
-
"""
|
97
|
-
AbsoluteLocationPath : PATH_SEP RelativeLocationPath
|
98
|
-
"""
|
99
|
-
p[0] = ast.AbsolutePath(p[1], p[2])
|
100
|
-
|
101
|
-
|
102
|
-
def p_abbreviated_absolute_location_path(p):
|
103
|
-
"""
|
104
|
-
AbbreviatedAbsoluteLocationPath : ABBREV_PATH_SEP RelativeLocationPath
|
105
|
-
"""
|
106
|
-
p[0] = ast.AbsolutePath(p[1], p[2])
|
107
|
-
|
108
|
-
|
109
|
-
def p_relative_location_path_simple(p):
|
110
|
-
"""
|
111
|
-
RelativeLocationPath : Step
|
112
|
-
"""
|
113
|
-
p[0] = p[1]
|
114
|
-
|
115
|
-
|
116
|
-
def p_relative_location_path_binary(p):
|
117
|
-
"""
|
118
|
-
RelativeLocationPath : RelativeLocationPath PATH_SEP Step
|
119
|
-
| RelativeLocationPath ABBREV_PATH_SEP Step
|
120
|
-
"""
|
121
|
-
p[0] = ast.BinaryExpression(p[1], p[2], p[3])
|
122
|
-
|
123
|
-
|
124
|
-
#
|
125
|
-
# path steps
|
126
|
-
#
|
127
|
-
|
128
|
-
|
129
|
-
def p_step_nodetest(p):
|
130
|
-
"""
|
131
|
-
Step : NodeTest
|
132
|
-
"""
|
133
|
-
p[0] = ast.Step(None, p[1], [])
|
134
|
-
|
135
|
-
|
136
|
-
def p_step_nodetest_predicates(p):
|
137
|
-
"""
|
138
|
-
Step : NodeTest PredicateList
|
139
|
-
"""
|
140
|
-
p[0] = ast.Step(None, p[1], p[2])
|
141
|
-
|
142
|
-
|
143
|
-
def p_step_axis_nodetest(p):
|
144
|
-
"""
|
145
|
-
Step : AxisSpecifier NodeTest
|
146
|
-
"""
|
147
|
-
p[0] = ast.Step(p[1], p[2], [])
|
148
|
-
|
149
|
-
|
150
|
-
def p_step_axis_nodetest_predicates(p):
|
151
|
-
"""
|
152
|
-
Step : AxisSpecifier NodeTest PredicateList
|
153
|
-
"""
|
154
|
-
p[0] = ast.Step(p[1], p[2], p[3])
|
155
|
-
|
156
|
-
|
157
|
-
def p_step_abbrev(p):
|
158
|
-
"""
|
159
|
-
Step : ABBREV_STEP_SELF
|
160
|
-
| ABBREV_STEP_PARENT
|
161
|
-
"""
|
162
|
-
p[0] = ast.AbbreviatedStep(p[1])
|
163
|
-
|
164
|
-
|
165
|
-
#
|
166
|
-
# axis specifier
|
167
|
-
#
|
168
|
-
|
169
|
-
|
170
|
-
def p_axis_specifier_full(p):
|
171
|
-
"""
|
172
|
-
AxisSpecifier : AXISNAME AXIS_SEP
|
173
|
-
"""
|
174
|
-
p[0] = p[1]
|
175
|
-
|
176
|
-
|
177
|
-
def p_axis_specifier_abbrev(p):
|
178
|
-
"""
|
179
|
-
AxisSpecifier : ABBREV_AXIS_AT
|
180
|
-
"""
|
181
|
-
p[0] = "@"
|
182
|
-
|
183
|
-
|
184
|
-
#
|
185
|
-
# node test
|
186
|
-
#
|
187
|
-
|
188
|
-
|
189
|
-
def p_node_test_name_test(p):
|
190
|
-
"""
|
191
|
-
NodeTest : NameTest
|
192
|
-
"""
|
193
|
-
p[0] = p[1]
|
194
|
-
|
195
|
-
|
196
|
-
def p_node_test_type_simple(p):
|
197
|
-
"""
|
198
|
-
NodeTest : NODETYPE OPEN_PAREN CLOSE_PAREN
|
199
|
-
"""
|
200
|
-
# NOTE: Strictly speaking p[1] must come from a list of recognized
|
201
|
-
# NodeTypes. Since we don't actually do anything with them, we don't
|
202
|
-
# need to recognize them.
|
203
|
-
p[0] = ast.NodeType(p[1])
|
204
|
-
|
205
|
-
|
206
|
-
def p_node_test_type_literal(p):
|
207
|
-
"""
|
208
|
-
NodeTest : NODETYPE OPEN_PAREN LITERAL CLOSE_PAREN
|
209
|
-
"""
|
210
|
-
# NOTE: Technically this only allows 'processing-instruction' for p[1].
|
211
|
-
# We'll go light on that restriction since we don't actually need it for
|
212
|
-
# processing.
|
213
|
-
p[0] = ast.NodeType(p[1], p[3])
|
214
|
-
|
215
|
-
|
216
|
-
#
|
217
|
-
# name test
|
218
|
-
#
|
219
|
-
|
220
|
-
|
221
|
-
def p_name_test_star(p):
|
222
|
-
"""
|
223
|
-
NameTest : STAR_OP
|
224
|
-
"""
|
225
|
-
p[0] = ast.NameTest(None, p[1])
|
226
|
-
|
227
|
-
|
228
|
-
def p_name_test_prefix_star(p):
|
229
|
-
"""
|
230
|
-
NameTest : NCNAME COLON STAR_OP
|
231
|
-
"""
|
232
|
-
p[0] = ast.NameTest(p[1], p[3])
|
233
|
-
|
234
|
-
|
235
|
-
def p_name_test_qname(p):
|
236
|
-
"""
|
237
|
-
NameTest : QName
|
238
|
-
"""
|
239
|
-
qname = p[1]
|
240
|
-
p[0] = ast.NameTest(qname[0], qname[1])
|
241
|
-
|
242
|
-
|
243
|
-
#
|
244
|
-
# qname
|
245
|
-
#
|
246
|
-
|
247
|
-
|
248
|
-
def p_qname_prefixed(p):
|
249
|
-
"""
|
250
|
-
QName : NCNAME COLON NCNAME
|
251
|
-
"""
|
252
|
-
p[0] = (p[1], p[3])
|
253
|
-
|
254
|
-
|
255
|
-
def p_qname_unprefixed(p):
|
256
|
-
"""
|
257
|
-
QName : NCNAME
|
258
|
-
"""
|
259
|
-
p[0] = (None, p[1])
|
260
|
-
|
261
|
-
|
262
|
-
def p_funcqname_prefixed(p):
|
263
|
-
"""
|
264
|
-
FuncQName : NCNAME COLON FUNCNAME
|
265
|
-
"""
|
266
|
-
p[0] = (p[1], p[3])
|
267
|
-
|
268
|
-
|
269
|
-
def p_funcqname_unprefixed(p):
|
270
|
-
"""
|
271
|
-
FuncQName : FUNCNAME
|
272
|
-
"""
|
273
|
-
p[0] = (None, p[1])
|
274
|
-
|
275
|
-
|
276
|
-
#
|
277
|
-
# filter expressions
|
278
|
-
#
|
279
|
-
|
280
|
-
|
281
|
-
def p_filter_expr_simple(p):
|
282
|
-
"""
|
283
|
-
FilterExpr : VariableReference
|
284
|
-
| LITERAL
|
285
|
-
| Number
|
286
|
-
| FunctionCall
|
287
|
-
"""
|
288
|
-
# FIXME: | FunctionCall moved so as not to conflict with NodeTest :
|
289
|
-
# FunctionCall
|
290
|
-
p[0] = p[1]
|
291
|
-
|
292
|
-
|
293
|
-
def p_filter_expr_grouped(p):
|
294
|
-
"""
|
295
|
-
FilterExpr : OPEN_PAREN Expr CLOSE_PAREN
|
296
|
-
"""
|
297
|
-
p[0] = p[2]
|
298
|
-
|
299
|
-
|
300
|
-
def p_filter_expr_predicate(p):
|
301
|
-
"""
|
302
|
-
FilterExpr : FilterExpr Predicate
|
303
|
-
"""
|
304
|
-
if not hasattr(p[1], "append_predicate"):
|
305
|
-
p[1] = ast.PredicatedExpression(p[1])
|
306
|
-
p[1].append_predicate(p[2])
|
307
|
-
p[0] = p[1]
|
308
|
-
|
309
|
-
|
310
|
-
#
|
311
|
-
# predicates
|
312
|
-
#
|
313
|
-
|
314
|
-
|
315
|
-
def p_predicate_list_single(p):
|
316
|
-
"""
|
317
|
-
PredicateList : Predicate
|
318
|
-
"""
|
319
|
-
p[0] = [p[1]]
|
320
|
-
|
321
|
-
|
322
|
-
def p_predicate_list_recursive(p):
|
323
|
-
"""
|
324
|
-
PredicateList : PredicateList Predicate
|
325
|
-
"""
|
326
|
-
p[0] = p[1]
|
327
|
-
p[0].append(p[2])
|
328
|
-
|
329
|
-
|
330
|
-
def p_predicate(p):
|
331
|
-
"""
|
332
|
-
Predicate : OPEN_BRACKET Expr CLOSE_BRACKET
|
333
|
-
"""
|
334
|
-
p[0] = p[2]
|
335
|
-
|
336
|
-
|
337
|
-
#
|
338
|
-
# variable
|
339
|
-
#
|
340
|
-
|
341
|
-
|
342
|
-
def p_variable_reference(p):
|
343
|
-
"""
|
344
|
-
VariableReference : DOLLAR QName
|
345
|
-
"""
|
346
|
-
p[0] = ast.VariableReference(p[2])
|
347
|
-
|
348
|
-
|
349
|
-
#
|
350
|
-
# number
|
351
|
-
#
|
352
|
-
|
353
|
-
|
354
|
-
def p_number(p):
|
355
|
-
"""
|
356
|
-
Number : FLOAT
|
357
|
-
| INTEGER
|
358
|
-
"""
|
359
|
-
p[0] = p[1]
|
360
|
-
|
361
|
-
|
362
|
-
#
|
363
|
-
# funcall
|
364
|
-
#
|
365
|
-
|
366
|
-
|
367
|
-
def p_function_call(p):
|
368
|
-
"""
|
369
|
-
FunctionCall : FuncQName FormalArguments
|
370
|
-
"""
|
371
|
-
# FIXME: This production also matches NodeType() or
|
372
|
-
# processing-instruction("foo"), which are technically NodeTest
|
373
|
-
qname = p[1]
|
374
|
-
p[0] = ast.FunctionCall(qname[0], qname[1], p[2])
|
375
|
-
|
376
|
-
|
377
|
-
def p_formal_arguments_empty(p):
|
378
|
-
"""
|
379
|
-
FormalArguments : OPEN_PAREN CLOSE_PAREN
|
380
|
-
"""
|
381
|
-
p[0] = []
|
382
|
-
|
383
|
-
|
384
|
-
def p_formal_arguments_list(p):
|
385
|
-
"""
|
386
|
-
FormalArguments : OPEN_PAREN ArgumentList CLOSE_PAREN
|
387
|
-
"""
|
388
|
-
p[0] = p[2]
|
389
|
-
|
390
|
-
|
391
|
-
def p_argument_list_single(p):
|
392
|
-
"""
|
393
|
-
ArgumentList : Expr
|
394
|
-
"""
|
395
|
-
p[0] = [p[1]]
|
396
|
-
|
397
|
-
|
398
|
-
def p_argument_list_recursive(p):
|
399
|
-
"""
|
400
|
-
ArgumentList : ArgumentList COMMA Expr
|
401
|
-
"""
|
402
|
-
p[0] = p[1]
|
403
|
-
p[0].append(p[3])
|
404
|
-
|
405
|
-
|
406
|
-
#
|
407
|
-
# error handling
|
408
|
-
#
|
409
|
-
|
410
|
-
|
411
|
-
def p_error(p):
|
412
|
-
# In some cases, p could actually be None.
|
413
|
-
# However, stack trace should have enough information to identify the problem.
|
414
|
-
raise RuntimeError("Syntax error at '%s'" % repr(p))
|
kodexa/selectors/parserules.pyi
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
# Empty on purpose to stop mypy analyzing the generated file
|
kodexa/selectors/parsetab.py
DELETED
@@ -1,90 +0,0 @@
|
|
1
|
-
|
2
|
-
# parsetab.py
|
3
|
-
# This file is automatically generated. Do not edit.
|
4
|
-
# pylint: disable=W,C,R
|
5
|
-
_tabversion = '3.10'
|
6
|
-
|
7
|
-
_lr_method = 'LALR'
|
8
|
-
|
9
|
-
_lr_signature = 'leftOR_OPleftAND_OPleftEQUAL_OPleftREL_OPleftPLUS_OPMINUS_OPleftMULT_OPDIV_OPMOD_OPrightUMINUS_OPleftUNION_OPleftINTERSECT_OPABBREV_AXIS_AT ABBREV_PATH_SEP ABBREV_STEP_PARENT ABBREV_STEP_SELF AND_OP AXISNAME AXIS_SEP CLOSE_BRACKET CLOSE_PAREN COLON COMMA DIV_OP DOLLAR EQUAL_OP FLOAT FUNCNAME INTEGER INTERSECT_OP INTERSECT_OP LITERAL MINUS_OP MOD_OP MULT_OP NCNAME NODETYPE OPEN_BRACKET OPEN_PAREN OR_OP PATH_SEP PIPELINE_OP PLUS_OP REL_OP STAR_OP UNION_OP\nExpr : Expr OR_OP Expr\n | Expr AND_OP Expr\n | Expr EQUAL_OP Expr\n | Expr REL_OP Expr\n | Expr PLUS_OP Expr\n | Expr MINUS_OP Expr\n | Expr MULT_OP Expr\n | Expr DIV_OP Expr\n | Expr MOD_OP Expr\n | Expr UNION_OP Expr\n | Expr INTERSECT_OP Expr\n\nExpr : MINUS_OP Expr %prec UMINUS_OP\n\nExpr : Expr PIPELINE_OP Expr\n\nExpr : FilterExpr PATH_SEP RelativeLocationPath\n | FilterExpr ABBREV_PATH_SEP RelativeLocationPath\n\nExpr : RelativeLocationPath\n | AbsoluteLocationPath\n | AbbreviatedAbsoluteLocationPath\n | FilterExpr\n\nAbsoluteLocationPath : PATH_SEP\n\nAbsoluteLocationPath : PATH_SEP RelativeLocationPath\n\nAbbreviatedAbsoluteLocationPath : ABBREV_PATH_SEP RelativeLocationPath\n\nRelativeLocationPath : Step\n\nRelativeLocationPath : RelativeLocationPath PATH_SEP Step\n | RelativeLocationPath ABBREV_PATH_SEP Step\n\nStep : NodeTest\n\nStep : NodeTest PredicateList\n\nStep : AxisSpecifier NodeTest\n\nStep : AxisSpecifier NodeTest PredicateList\n\nStep : ABBREV_STEP_SELF\n | ABBREV_STEP_PARENT\n\nAxisSpecifier : AXISNAME AXIS_SEP\n\nAxisSpecifier : ABBREV_AXIS_AT\n\nNodeTest : NameTest\n\nNodeTest : NODETYPE OPEN_PAREN CLOSE_PAREN\n\nNodeTest : NODETYPE OPEN_PAREN LITERAL CLOSE_PAREN\n\nNameTest : STAR_OP\n\nNameTest : NCNAME COLON STAR_OP\n\nNameTest : QName\n\nQName : NCNAME COLON NCNAME\n\nQName : NCNAME\n\nFuncQName : NCNAME COLON FUNCNAME\n\nFuncQName : FUNCNAME\n\nFilterExpr : VariableReference\n | LITERAL\n | Number\n | FunctionCall\n\nFilterExpr : OPEN_PAREN Expr CLOSE_PAREN\n\nFilterExpr : FilterExpr Predicate\n\nPredicateList : Predicate\n\nPredicateList : PredicateList Predicate\n\nPredicate : OPEN_BRACKET Expr CLOSE_BRACKET\n\nVariableReference : DOLLAR QName\n\nNumber : FLOAT\n | INTEGER\n\nFunctionCall : FuncQName FormalArguments\n\nFormalArguments : OPEN_PAREN CLOSE_PAREN\n\nFormalArguments : OPEN_PAREN ArgumentList CLOSE_PAREN\n\nArgumentList : Expr\n\nArgumentList : ArgumentList COMMA Expr\n'
|
10
|
-
|
11
|
-
_lr_action_items = {'MINUS_OP':([0,1,2,3,4,5,7,8,9,10,11,12,13,14,16,17,18,20,22,23,24,26,30,31,32,33,34,35,36,37,38,39,40,41,42,43,46,47,48,49,52,53,54,55,56,57,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,96,97,98,],[2,36,2,-19,-20,-16,-17,-18,-44,-45,-46,-47,2,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,2,2,2,2,2,2,2,2,2,2,2,2,-12,-49,2,-21,-41,-22,36,-53,-41,-56,2,-27,-50,-28,36,36,36,36,-5,-6,-7,-8,-9,-10,-11,36,-14,-15,36,-24,-25,-48,-57,36,-51,-29,-40,-38,-35,-52,-58,2,-36,36,]),'LITERAL':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,62,96,],[10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,93,10,]),'OPEN_PAREN':([0,2,13,19,25,27,31,32,33,34,35,36,37,38,39,40,41,42,47,57,90,96,],[13,13,13,57,-43,62,13,13,13,13,13,13,13,13,13,13,13,13,13,13,-42,13,]),'PATH_SEP':([0,2,3,5,9,10,11,12,13,14,16,17,18,20,22,23,24,26,30,31,32,33,34,35,36,37,38,39,40,41,42,46,47,48,49,52,54,55,56,57,58,59,60,76,77,80,81,82,84,87,88,89,91,92,94,95,96,97,],[4,4,44,50,-44,-45,-46,-47,4,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,4,4,4,4,4,4,4,4,4,4,4,4,-49,4,50,-41,50,-53,-41,-56,4,-27,-50,-28,50,50,-24,-25,-48,-57,-51,-29,-40,-38,-35,-52,-58,4,-36,]),'ABBREV_PATH_SEP':([0,2,3,5,9,10,11,12,13,14,16,17,18,20,22,23,24,26,30,31,32,33,34,35,36,37,38,39,40,41,42,46,47,48,49,52,54,55,56,57,58,59,60,76,77,80,81,82,84,87,88,89,91,92,94,95,96,97,],[6,6,45,51,-44,-45,-46,-47,6,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,6,6,6,6,6,6,6,6,6,6,6,6,-49,6,51,-41,51,-53,-41,-56,6,-27,-50,-28,51,51,-24,-25,-48,-57,-51,-29,-40,-38,-35,-52,-58,6,-36,]),'DOLLAR':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,]),'FLOAT':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,]),'INTEGER':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,]),'ABBREV_STEP_SELF':([0,2,4,6,13,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,96,],[22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,]),'ABBREV_STEP_PARENT':([0,2,4,6,13,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,96,],[23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,]),'NCNAME':([0,2,4,6,13,15,21,29,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,61,63,79,83,96,],[24,24,49,49,24,55,49,-33,24,24,24,24,24,24,24,24,24,24,24,24,49,49,24,49,49,24,89,-32,89,89,24,]),'FUNCNAME':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,61,96,],[25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,90,25,]),'NODETYPE':([0,2,4,6,13,21,29,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,63,96,],[27,27,27,27,27,27,-33,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,-32,27,]),'AXISNAME':([0,2,4,6,13,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,96,],[28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,]),'ABBREV_AXIS_AT':([0,2,4,6,13,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,96,],[29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,]),'STAR_OP':([0,2,4,6,13,21,29,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,61,63,79,96,],[30,30,30,30,30,30,-33,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,91,-32,91,30,]),'$end':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,80,81,82,84,87,88,89,91,92,94,95,97,],[0,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,-53,-41,-56,-27,-50,-28,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-13,-14,-15,-24,-25,-48,-57,-51,-29,-40,-38,-35,-52,-58,-36,]),'OR_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[31,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,31,-53,-41,-56,-27,-50,-28,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,31,-14,-15,31,-24,-25,-48,-57,31,-51,-29,-40,-38,-35,-52,-58,-36,31,]),'AND_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[32,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,32,-53,-41,-56,-27,-50,-28,32,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,32,-14,-15,32,-24,-25,-48,-57,32,-51,-29,-40,-38,-35,-52,-58,-36,32,]),'EQUAL_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[33,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,33,-53,-41,-56,-27,-50,-28,33,33,-3,-4,-5,-6,-7,-8,-9,-10,-11,33,-14,-15,33,-24,-25,-48,-57,33,-51,-29,-40,-38,-35,-52,-58,-36,33,]),'REL_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[34,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,34,-53,-41,-56,-27,-50,-28,34,34,34,-4,-5,-6,-7,-8,-9,-10,-11,34,-14,-15,34,-24,-25,-48,-57,34,-51,-29,-40,-38,-35,-52,-58,-36,34,]),'PLUS_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[35,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,35,-53,-41,-56,-27,-50,-28,35,35,35,35,-5,-6,-7,-8,-9,-10,-11,35,-14,-15,35,-24,-25,-48,-57,35,-51,-29,-40,-38,-35,-52,-58,-36,35,]),'MULT_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[37,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,37,-53,-41,-56,-27,-50,-28,37,37,37,37,37,37,-7,-8,-9,-10,-11,37,-14,-15,37,-24,-25,-48,-57,37,-51,-29,-40,-38,-35,-52,-58,-36,37,]),'DIV_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[38,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,38,-53,-41,-56,-27,-50,-28,38,38,38,38,38,38,-7,-8,-9,-10,-11,38,-14,-15,38,-24,-25,-48,-57,38,-51,-29,-40,-38,-35,-52,-58,-36,38,]),'MOD_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[39,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,39,-53,-41,-56,-27,-50,-28,39,39,39,39,39,39,-7,-8,-9,-10,-11,39,-14,-15,39,-24,-25,-48,-57,39,-51,-29,-40,-38,-35,-52,-58,-36,39,]),'UNION_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[40,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,40,-49,-21,-41,-22,40,-53,-41,-56,-27,-50,-28,40,40,40,40,40,40,40,40,40,-10,-11,40,-14,-15,40,-24,-25,-48,-57,40,-51,-29,-40,-38,-35,-52,-58,-36,40,]),'INTERSECT_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[41,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,41,-49,-21,-41,-22,41,-53,-41,-56,-27,-50,-28,41,41,41,41,41,41,41,41,41,41,-11,41,-14,-15,41,-24,-25,-48,-57,41,-51,-29,-40,-38,-35,-52,-58,-36,41,]),'PIPELINE_OP':([1,3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,86,87,88,89,91,92,94,95,97,98,],[42,-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,42,-53,-41,-56,-27,-50,-28,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,42,-14,-15,42,-24,-25,-48,-57,42,-51,-29,-40,-38,-35,-52,-58,-36,42,]),'CLOSE_PAREN':([3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,53,54,55,56,57,58,59,60,62,64,65,66,67,68,69,70,71,72,73,74,75,76,77,80,81,82,84,85,86,87,88,89,91,92,93,94,95,97,98,],[-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,82,-53,-41,-56,84,-27,-50,-28,92,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-13,-14,-15,-24,-25,-48,-57,95,-59,-51,-29,-40,-38,-35,97,-52,-58,-36,-60,]),'CLOSE_BRACKET':([3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,82,84,87,88,89,91,92,94,95,97,],[-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,-53,-41,-56,-27,-50,-28,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-13,-14,-15,94,-24,-25,-48,-57,-51,-29,-40,-38,-35,-52,-58,-36,]),'COMMA':([3,4,5,7,8,9,10,11,12,14,16,17,18,20,22,23,24,26,30,43,46,48,49,52,54,55,56,58,59,60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,80,81,82,84,85,86,87,88,89,91,92,94,95,97,98,],[-19,-20,-16,-17,-18,-44,-45,-46,-47,-23,-39,-54,-55,-26,-30,-31,-41,-34,-37,-12,-49,-21,-41,-22,-53,-41,-56,-27,-50,-28,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-13,-14,-15,-24,-25,-48,-57,96,-59,-51,-29,-40,-38,-35,-52,-58,-36,-60,]),'OPEN_BRACKET':([3,9,10,11,12,16,17,18,20,24,26,30,46,49,54,55,56,58,59,60,82,84,87,88,89,91,92,94,95,97,],[47,-44,-45,-46,-47,-39,-54,-55,47,-41,-34,-37,-49,-41,-53,-41,-56,47,-50,47,-48,-57,-51,47,-40,-38,-35,-52,-58,-36,]),'COLON':([24,49,55,],[61,79,83,]),'AXIS_SEP':([28,],[63,]),}
|
12
|
-
|
13
|
-
_lr_action = {}
|
14
|
-
for _k, _v in _lr_action_items.items():
|
15
|
-
for _x,_y in zip(_v[0],_v[1]):
|
16
|
-
if not _x in _lr_action: _lr_action[_x] = {}
|
17
|
-
_lr_action[_x][_k] = _y
|
18
|
-
del _lr_action_items
|
19
|
-
|
20
|
-
_lr_goto_items = {'Expr':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[1,43,53,64,65,66,67,68,69,70,71,72,73,74,75,78,86,98,]),'FilterExpr':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,]),'RelativeLocationPath':([0,2,4,6,13,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,57,96,],[5,5,48,52,5,5,5,5,5,5,5,5,5,5,5,5,5,76,77,5,5,5,]),'AbsoluteLocationPath':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,]),'AbbreviatedAbsoluteLocationPath':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,]),'VariableReference':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,]),'Number':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,]),'FunctionCall':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,]),'Step':([0,2,4,6,13,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,96,],[14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,80,81,14,14,]),'QName':([0,2,4,6,13,15,21,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,96,],[16,16,16,16,16,54,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,]),'FuncQName':([0,2,13,31,32,33,34,35,36,37,38,39,40,41,42,47,57,96,],[19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,]),'NodeTest':([0,2,4,6,13,21,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,96,],[20,20,20,20,20,60,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,]),'AxisSpecifier':([0,2,4,6,13,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,96,],[21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,]),'NameTest':([0,2,4,6,13,21,31,32,33,34,35,36,37,38,39,40,41,42,44,45,47,50,51,57,96,],[26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,]),'Predicate':([3,20,58,60,88,],[46,59,87,59,87,]),'FormalArguments':([19,],[56,]),'PredicateList':([20,60,],[58,88,]),'ArgumentList':([57,],[85,]),}
|
21
|
-
|
22
|
-
_lr_goto = {}
|
23
|
-
for _k, _v in _lr_goto_items.items():
|
24
|
-
for _x, _y in zip(_v[0], _v[1]):
|
25
|
-
if not _x in _lr_goto: _lr_goto[_x] = {}
|
26
|
-
_lr_goto[_x][_k] = _y
|
27
|
-
del _lr_goto_items
|
28
|
-
_lr_productions = [
|
29
|
-
("S' -> Expr","S'",1,None,None,None),
|
30
|
-
('Expr -> Expr OR_OP Expr','Expr',3,'p_expr_boolean','parserules.py',31),
|
31
|
-
('Expr -> Expr AND_OP Expr','Expr',3,'p_expr_boolean','parserules.py',32),
|
32
|
-
('Expr -> Expr EQUAL_OP Expr','Expr',3,'p_expr_boolean','parserules.py',33),
|
33
|
-
('Expr -> Expr REL_OP Expr','Expr',3,'p_expr_boolean','parserules.py',34),
|
34
|
-
('Expr -> Expr PLUS_OP Expr','Expr',3,'p_expr_boolean','parserules.py',35),
|
35
|
-
('Expr -> Expr MINUS_OP Expr','Expr',3,'p_expr_boolean','parserules.py',36),
|
36
|
-
('Expr -> Expr MULT_OP Expr','Expr',3,'p_expr_boolean','parserules.py',37),
|
37
|
-
('Expr -> Expr DIV_OP Expr','Expr',3,'p_expr_boolean','parserules.py',38),
|
38
|
-
('Expr -> Expr MOD_OP Expr','Expr',3,'p_expr_boolean','parserules.py',39),
|
39
|
-
('Expr -> Expr UNION_OP Expr','Expr',3,'p_expr_boolean','parserules.py',40),
|
40
|
-
('Expr -> Expr INTERSECT_OP Expr','Expr',3,'p_expr_boolean','parserules.py',41),
|
41
|
-
('Expr -> MINUS_OP Expr','Expr',2,'p_expr_unary','parserules.py',48),
|
42
|
-
('Expr -> Expr PIPELINE_OP Expr','Expr',3,'p_expr_pipeline','parserules.py',55),
|
43
|
-
('Expr -> FilterExpr PATH_SEP RelativeLocationPath','Expr',3,'p_path_expr_binary','parserules.py',67),
|
44
|
-
('Expr -> FilterExpr ABBREV_PATH_SEP RelativeLocationPath','Expr',3,'p_path_expr_binary','parserules.py',68),
|
45
|
-
('Expr -> RelativeLocationPath','Expr',1,'p_path_expr_unary','parserules.py',75),
|
46
|
-
('Expr -> AbsoluteLocationPath','Expr',1,'p_path_expr_unary','parserules.py',76),
|
47
|
-
('Expr -> AbbreviatedAbsoluteLocationPath','Expr',1,'p_path_expr_unary','parserules.py',77),
|
48
|
-
('Expr -> FilterExpr','Expr',1,'p_path_expr_unary','parserules.py',78),
|
49
|
-
('AbsoluteLocationPath -> PATH_SEP','AbsoluteLocationPath',1,'p_absolute_location_path_rootonly','parserules.py',90),
|
50
|
-
('AbsoluteLocationPath -> PATH_SEP RelativeLocationPath','AbsoluteLocationPath',2,'p_absolute_location_path_subpath','parserules.py',97),
|
51
|
-
('AbbreviatedAbsoluteLocationPath -> ABBREV_PATH_SEP RelativeLocationPath','AbbreviatedAbsoluteLocationPath',2,'p_abbreviated_absolute_location_path','parserules.py',104),
|
52
|
-
('RelativeLocationPath -> Step','RelativeLocationPath',1,'p_relative_location_path_simple','parserules.py',111),
|
53
|
-
('RelativeLocationPath -> RelativeLocationPath PATH_SEP Step','RelativeLocationPath',3,'p_relative_location_path_binary','parserules.py',118),
|
54
|
-
('RelativeLocationPath -> RelativeLocationPath ABBREV_PATH_SEP Step','RelativeLocationPath',3,'p_relative_location_path_binary','parserules.py',119),
|
55
|
-
('Step -> NodeTest','Step',1,'p_step_nodetest','parserules.py',131),
|
56
|
-
('Step -> NodeTest PredicateList','Step',2,'p_step_nodetest_predicates','parserules.py',138),
|
57
|
-
('Step -> AxisSpecifier NodeTest','Step',2,'p_step_axis_nodetest','parserules.py',145),
|
58
|
-
('Step -> AxisSpecifier NodeTest PredicateList','Step',3,'p_step_axis_nodetest_predicates','parserules.py',152),
|
59
|
-
('Step -> ABBREV_STEP_SELF','Step',1,'p_step_abbrev','parserules.py',159),
|
60
|
-
('Step -> ABBREV_STEP_PARENT','Step',1,'p_step_abbrev','parserules.py',160),
|
61
|
-
('AxisSpecifier -> AXISNAME AXIS_SEP','AxisSpecifier',2,'p_axis_specifier_full','parserules.py',172),
|
62
|
-
('AxisSpecifier -> ABBREV_AXIS_AT','AxisSpecifier',1,'p_axis_specifier_abbrev','parserules.py',179),
|
63
|
-
('NodeTest -> NameTest','NodeTest',1,'p_node_test_name_test','parserules.py',191),
|
64
|
-
('NodeTest -> NODETYPE OPEN_PAREN CLOSE_PAREN','NodeTest',3,'p_node_test_type_simple','parserules.py',198),
|
65
|
-
('NodeTest -> NODETYPE OPEN_PAREN LITERAL CLOSE_PAREN','NodeTest',4,'p_node_test_type_literal','parserules.py',208),
|
66
|
-
('NameTest -> STAR_OP','NameTest',1,'p_name_test_star','parserules.py',223),
|
67
|
-
('NameTest -> NCNAME COLON STAR_OP','NameTest',3,'p_name_test_prefix_star','parserules.py',230),
|
68
|
-
('NameTest -> QName','NameTest',1,'p_name_test_qname','parserules.py',237),
|
69
|
-
('QName -> NCNAME COLON NCNAME','QName',3,'p_qname_prefixed','parserules.py',250),
|
70
|
-
('QName -> NCNAME','QName',1,'p_qname_unprefixed','parserules.py',257),
|
71
|
-
('FuncQName -> NCNAME COLON FUNCNAME','FuncQName',3,'p_funcqname_prefixed','parserules.py',264),
|
72
|
-
('FuncQName -> FUNCNAME','FuncQName',1,'p_funcqname_unprefixed','parserules.py',271),
|
73
|
-
('FilterExpr -> VariableReference','FilterExpr',1,'p_filter_expr_simple','parserules.py',283),
|
74
|
-
('FilterExpr -> LITERAL','FilterExpr',1,'p_filter_expr_simple','parserules.py',284),
|
75
|
-
('FilterExpr -> Number','FilterExpr',1,'p_filter_expr_simple','parserules.py',285),
|
76
|
-
('FilterExpr -> FunctionCall','FilterExpr',1,'p_filter_expr_simple','parserules.py',286),
|
77
|
-
('FilterExpr -> OPEN_PAREN Expr CLOSE_PAREN','FilterExpr',3,'p_filter_expr_grouped','parserules.py',295),
|
78
|
-
('FilterExpr -> FilterExpr Predicate','FilterExpr',2,'p_filter_expr_predicate','parserules.py',302),
|
79
|
-
('PredicateList -> Predicate','PredicateList',1,'p_predicate_list_single','parserules.py',317),
|
80
|
-
('PredicateList -> PredicateList Predicate','PredicateList',2,'p_predicate_list_recursive','parserules.py',324),
|
81
|
-
('Predicate -> OPEN_BRACKET Expr CLOSE_BRACKET','Predicate',3,'p_predicate','parserules.py',332),
|
82
|
-
('VariableReference -> DOLLAR QName','VariableReference',2,'p_variable_reference','parserules.py',344),
|
83
|
-
('Number -> FLOAT','Number',1,'p_number','parserules.py',356),
|
84
|
-
('Number -> INTEGER','Number',1,'p_number','parserules.py',357),
|
85
|
-
('FunctionCall -> FuncQName FormalArguments','FunctionCall',2,'p_function_call','parserules.py',369),
|
86
|
-
('FormalArguments -> OPEN_PAREN CLOSE_PAREN','FormalArguments',2,'p_formal_arguments_empty','parserules.py',379),
|
87
|
-
('FormalArguments -> OPEN_PAREN ArgumentList CLOSE_PAREN','FormalArguments',3,'p_formal_arguments_list','parserules.py',386),
|
88
|
-
('ArgumentList -> Expr','ArgumentList',1,'p_argument_list_single','parserules.py',393),
|
89
|
-
('ArgumentList -> ArgumentList COMMA Expr','ArgumentList',3,'p_argument_list_recursive','parserules.py',400),
|
90
|
-
]
|
kodexa/selectors/parsetab.pyi
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
# Empty on purpose to stop mypy analyzing the generated file
|
@@ -1,51 +0,0 @@
|
|
1
|
-
kodexa/__init__.py,sha256=nH7p-Rk5QXXeEBj-DSewxr1iGx8B82RNyWH7TITSBPI,957
|
2
|
-
kodexa/assistant/__init__.py,sha256=nlXm_YnV_50hgn0TIT2Fkc2fQ-86OjmctY_j8My9nc4,171
|
3
|
-
kodexa/assistant/assistant.py,sha256=5KFdbqFSLIZJyDRyZdpcfr448fT-CW4JhYu9A6B9DGY,14663
|
4
|
-
kodexa/connectors/__init__.py,sha256=WF6G_MUeU32TlKSUKkpNoNX7dq8iBPliFMep4E8BmZc,328
|
5
|
-
kodexa/connectors/connectors.py,sha256=FpUZDkSyHld2b9eYRuVOWzaFtuGoaRuPXXicJB7THbc,10413
|
6
|
-
kodexa/dataclasses/__init__.py,sha256=CHMNsOamWA3gY5203gn8Ef5q1fgcczMtWKEvNjIOzPs,19486
|
7
|
-
kodexa/dataclasses/templates/llm_data_class.j2,sha256=YWjStW136chV_59JM3AYis3i-0jdrqDvLXsISUW9zDU,660
|
8
|
-
kodexa/model/__init__.py,sha256=rtLXYJBxB-rnukhslN9rlqoB3--1H3253HyHGbD_Gc8,796
|
9
|
-
kodexa/model/base.py,sha256=CaZK8nMhT1LdCpt4aLhebJGcorjq9qRID1FjnXnP14M,521
|
10
|
-
kodexa/model/entities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
11
|
-
kodexa/model/entities/check_response.py,sha256=eqBHxO6G2OAziL3p9bHGI-oiPkAG82H6Choc8wyvtM4,3949
|
12
|
-
kodexa/model/entities/product.py,sha256=StUhTEeLXmc05cj6XnZppQfeJsqCPbX1jdhsysHH--Q,5787
|
13
|
-
kodexa/model/entities/product_group.py,sha256=540fRGyUf34h1BzAN1DiWu6rGgvaj3xDFhZ2k-RvSFY,3617
|
14
|
-
kodexa/model/entities/product_subscription.py,sha256=UcmWR-qgLfdV7VCtJNwzgkanoS8nBSL6ngVuxQUK1M8,3810
|
15
|
-
kodexa/model/model.py,sha256=q3zEm6pPOB-xPCKbOxmTMqLALzmQr2Ppam8knApoSEE,119645
|
16
|
-
kodexa/model/objects.py,sha256=kZKsIYqToZfA_F9rtrZHyyp2x3MOo35xh66zJcRCseM,200322
|
17
|
-
kodexa/model/persistence.py,sha256=jUgQ8xwsAFIoZ_bEynxCDEWhUII42eN0e0Mum0dkQPg,72043
|
18
|
-
kodexa/model/utils.py,sha256=YEG3f8YzBil06D0P3_dfx2S9GnHREzyrjnlWwQ7oPlU,3038
|
19
|
-
kodexa/pipeline/__init__.py,sha256=sA7f5D6qkdMrpp2xTIeefnrUBI6xxEEWostvxfX_1Cs,236
|
20
|
-
kodexa/pipeline/pipeline.py,sha256=zyNEpA7KlGhPs_l-vgV6m-OCb16dbxQhl8QezeylugA,25540
|
21
|
-
kodexa/platform/__init__.py,sha256=1O3oiWMg292NPL_NacKDnK1T3_R6cMorrPRue_9e-O4,216
|
22
|
-
kodexa/platform/client.py,sha256=D1J5e4URBSVafEo07Yb9QMMdXcmJFA0g4Maa6TcNYNc,236029
|
23
|
-
kodexa/platform/interaction.py,sha256=6zpcwXKNZstUGNS6m4JsoRXAqCZPJHWI-ZN3co8nnF0,1055
|
24
|
-
kodexa/platform/kodexa.py,sha256=2s7Ez7_o-ywpNwbTRhtOUaQKtB9hKsDC_oJHaskXw-I,35315
|
25
|
-
kodexa/platform/manifest.py,sha256=ThjQOk0xbP0qACcpS8NM6-zQL_Emd_bv4QAW2FpbUWk,19454
|
26
|
-
kodexa/selectors/__init__.py,sha256=xA9-4vpyaAZWPSk3bh2kvDLkdv6XEmm7PjFbpziiTIk,100
|
27
|
-
kodexa/selectors/ast.py,sha256=K0JUY2tYYCmDlh4uz5N8Jh2zInDremlnriPsY3dx0AI,13523
|
28
|
-
kodexa/selectors/core.py,sha256=kkt02DN20gXeaDGoGubPPeeTV7rCr4sxTyELrI0l1YU,3691
|
29
|
-
kodexa/selectors/lexrules.py,sha256=Or9KYeMYthNxzgrY3u5gqnatdREMj8fOS8K2fIumlOQ,3447
|
30
|
-
kodexa/selectors/lextab.py,sha256=vlvvODRmj46wDUuqG9poDHtS0lRttrxXStUQ9ds2_iY,3155
|
31
|
-
kodexa/selectors/lextab.pyi,sha256=x39HNceESZYCouVS3wiNazxeNjhmYV2hP1iO4QWnqcw,61
|
32
|
-
kodexa/selectors/parserules.py,sha256=ovw7NnisjDMFUg6pnRVVEcaakvc35JZnMu3mjK5Z1VE,7068
|
33
|
-
kodexa/selectors/parserules.pyi,sha256=x39HNceESZYCouVS3wiNazxeNjhmYV2hP1iO4QWnqcw,61
|
34
|
-
kodexa/selectors/parsetab.py,sha256=m1aWwBq4jCrkLUvJ9Os1Jd23tbCNmPbgN9_KKFWHwJs,20867
|
35
|
-
kodexa/selectors/parsetab.pyi,sha256=x39HNceESZYCouVS3wiNazxeNjhmYV2hP1iO4QWnqcw,61
|
36
|
-
kodexa/spatial/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
37
|
-
kodexa/spatial/azure_models.py,sha256=Jw4abHIWl4dVScxC-a9QAsnFa8V3HisTmh0b0MFHCXQ,30564
|
38
|
-
kodexa/spatial/bbox_common.py,sha256=mbylO-s8KsK9p6nAwjq6DTaxEHhLZ0Nx4d3US82f5ZE,5975
|
39
|
-
kodexa/spatial/table_form_common.py,sha256=qJIqr6INNFTe8EPrXchZ9a1ZgS9dZnhx_wgvd6A41XQ,44214
|
40
|
-
kodexa/steps/__init__.py,sha256=qpmAtYePTv7G-HzUBx087bA3kq-PPGcFJf4_Z5P--0k,179
|
41
|
-
kodexa/steps/common.py,sha256=fGEuKxcztcqrYFpXbu_OYkxh42yR9s5mkszmtkJhnQ8,10428
|
42
|
-
kodexa/testing/__init__.py,sha256=P8W-SOnWsi48asfnQV06iyHrzZAzuX69j9oYwBvgp5s,323
|
43
|
-
kodexa/testing/test_components.py,sha256=g5lP-GY0nTHuH5cIEw45vIejEeBaWkPKQGHL36jejBQ,1052
|
44
|
-
kodexa/testing/test_utils.py,sha256=v44p__gE7ia67W7WeHN2HBFCWSCUrCZt7G4xBNCmwf8,14154
|
45
|
-
kodexa/training/__init__.py,sha256=xs2L62YpRkIRfslQwtQZ5Yxjhm7sLzX2TrVX6EuBnZQ,52
|
46
|
-
kodexa/training/train_utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
47
|
-
kodexa/utils/__init__.py,sha256=Pnim1o9_db5YEnNvDTxpM7HG-qTlL6n8JwFwOafU9wo,5928
|
48
|
-
kodexa-7.4.414781565138.dist-info/LICENSE,sha256=WNHhf_5RCaeuKWyq_K39vmp9F28LxKsB4SpomwSZ2L0,11357
|
49
|
-
kodexa-7.4.414781565138.dist-info/METADATA,sha256=jp9S2Z6WYlSuaJh4sblYumqkEnUuqTPzjvjOZFYolb8,2916
|
50
|
-
kodexa-7.4.414781565138.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
|
51
|
-
kodexa-7.4.414781565138.dist-info/RECORD,,
|
File without changes
|