@opra/common 0.5.0 → 0.7.0

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.
Files changed (419) hide show
  1. package/cjs/constants.js +1 -0
  2. package/cjs/exception/enums/issue-severity.enum.js +23 -0
  3. package/cjs/{types.js → exception/error-issue.js} +0 -0
  4. package/cjs/exception/http-errors/bad-request.error.js +22 -0
  5. package/cjs/exception/http-errors/failed-dependency.error.js +21 -0
  6. package/cjs/exception/http-errors/forbidden.error.js +23 -0
  7. package/cjs/exception/http-errors/internal-server.error.js +21 -0
  8. package/cjs/exception/http-errors/method-not-allowed.error.js +22 -0
  9. package/cjs/exception/http-errors/not-acceptable.error.js +22 -0
  10. package/cjs/exception/http-errors/not-found.error.js +25 -0
  11. package/cjs/exception/http-errors/unauthorized.error.js +22 -0
  12. package/cjs/exception/http-errors/unprocessable-entity.error.js +21 -0
  13. package/cjs/exception/index.js +18 -0
  14. package/cjs/exception/opra-exception.js +56 -0
  15. package/cjs/exception/resource-errors/resource-conflict.error.js +20 -0
  16. package/cjs/exception/resource-errors/resource-not-found.error.js +20 -0
  17. package/cjs/exception/wrap-exception.js +42 -0
  18. package/cjs/filter/antlr/OpraFilterLexer.js +386 -0
  19. package/cjs/filter/antlr/OpraFilterParser.js +2070 -0
  20. package/cjs/filter/antlr/OpraFilterVisitor.js +3 -0
  21. package/cjs/filter/ast/abstract/ast.js +10 -0
  22. package/cjs/filter/ast/abstract/expression.js +7 -0
  23. package/cjs/filter/ast/abstract/literal.js +14 -0
  24. package/cjs/filter/ast/abstract/term.js +7 -0
  25. package/cjs/filter/ast/expressions/arithmetic-expression.js +29 -0
  26. package/cjs/filter/ast/expressions/array-expression.js +15 -0
  27. package/cjs/filter/ast/expressions/comparison-expression.js +18 -0
  28. package/cjs/filter/ast/expressions/logical-expression.js +18 -0
  29. package/cjs/filter/ast/expressions/parentheses-expression.js +15 -0
  30. package/cjs/filter/ast/index.js +19 -0
  31. package/cjs/filter/ast/terms/boolean-literal.js +10 -0
  32. package/cjs/filter/ast/terms/date-literal.js +28 -0
  33. package/cjs/filter/ast/terms/external-constant.js +13 -0
  34. package/cjs/filter/ast/terms/null-literal.js +11 -0
  35. package/cjs/filter/ast/terms/number-literal.js +40 -0
  36. package/cjs/filter/ast/terms/qualified-identifier.js +10 -0
  37. package/cjs/filter/ast/terms/string-literal.js +14 -0
  38. package/cjs/filter/ast/terms/time-literal.js +33 -0
  39. package/cjs/filter/build.js +129 -0
  40. package/cjs/filter/error-listener.js +14 -0
  41. package/cjs/filter/errors.js +21 -0
  42. package/cjs/filter/filter-tree-visitor.js +113 -0
  43. package/cjs/filter/index.js +8 -0
  44. package/cjs/filter/parse.js +37 -0
  45. package/cjs/filter/utils.js +26 -0
  46. package/cjs/helpers/index.js +4 -0
  47. package/cjs/{classes → helpers}/responsive-map.js +1 -1
  48. package/cjs/{enums → http/enums}/http-headers.enum.js +9 -0
  49. package/cjs/{enums → http/enums}/http-status.enum.js +0 -0
  50. package/cjs/http/http-request.js +118 -0
  51. package/cjs/http/index.js +9 -0
  52. package/cjs/http/interfaces/client-http-headers.interface.js +2 -0
  53. package/cjs/http/interfaces/server-http-headers.interface.js +2 -0
  54. package/cjs/http/multipart/batch-multipart.js +155 -0
  55. package/cjs/http/multipart/http-request-content.js +16 -0
  56. package/cjs/http/multipart/http-response-content.js +14 -0
  57. package/cjs/http/multipart/index.js +4 -0
  58. package/cjs/http/utils/normalize-headers.js +28 -0
  59. package/cjs/i18n/i18n.js +175 -0
  60. package/cjs/i18n/index.js +10 -0
  61. package/cjs/i18n/string-utils.js +13 -0
  62. package/cjs/i18n/translate.js +15 -0
  63. package/cjs/index.js +12 -5
  64. package/cjs/schema/constants.js +11 -0
  65. package/cjs/schema/decorators/opr-collection-resource.decorator.js +23 -0
  66. package/cjs/schema/decorators/opr-complex-type.decorator.js +27 -0
  67. package/cjs/schema/decorators/opr-field.decorator.js +28 -0
  68. package/cjs/schema/decorators/opr-resolver.decorator.js +81 -0
  69. package/cjs/schema/decorators/opr-simple-type.decorator.js +18 -0
  70. package/cjs/schema/decorators/opr-singleton-resource.decorator.js +23 -0
  71. package/cjs/schema/implementation/data-type/builtin/any.type.js +9 -0
  72. package/cjs/schema/implementation/data-type/builtin/base64-binary.type.js +15 -0
  73. package/cjs/schema/implementation/data-type/builtin/bigint.type.js +15 -0
  74. package/cjs/schema/implementation/data-type/builtin/boolean.type.js +15 -0
  75. package/cjs/schema/implementation/data-type/builtin/date-string.type.js +15 -0
  76. package/cjs/schema/implementation/data-type/builtin/date.type.js +15 -0
  77. package/cjs/schema/implementation/data-type/builtin/guid.type.js +15 -0
  78. package/cjs/schema/implementation/data-type/builtin/integer.type.js +15 -0
  79. package/cjs/schema/implementation/data-type/builtin/number.type.js +15 -0
  80. package/cjs/schema/implementation/data-type/builtin/object.type.js +15 -0
  81. package/cjs/schema/implementation/data-type/builtin/string.type.js +15 -0
  82. package/cjs/schema/implementation/data-type/builtin-data-types.js +37 -0
  83. package/cjs/schema/implementation/data-type/complex-type.js +111 -0
  84. package/cjs/schema/implementation/data-type/data-type.js +36 -0
  85. package/cjs/schema/implementation/data-type/simple-type.js +21 -0
  86. package/cjs/schema/implementation/data-type/union-type.js +25 -0
  87. package/cjs/schema/implementation/document-builder.js +140 -0
  88. package/cjs/schema/implementation/opra-document.js +181 -0
  89. package/cjs/schema/implementation/query/collection-count-query.js +19 -0
  90. package/cjs/schema/implementation/query/collection-create-query.js +28 -0
  91. package/cjs/schema/implementation/query/collection-delete-many-query.js +19 -0
  92. package/cjs/schema/implementation/query/collection-delete-query.js +27 -0
  93. package/cjs/schema/implementation/query/collection-get-query.js +38 -0
  94. package/cjs/schema/implementation/query/collection-search-query.js +55 -0
  95. package/cjs/schema/implementation/query/collection-update-many-query.js +21 -0
  96. package/cjs/schema/implementation/query/collection-update-query.js +39 -0
  97. package/cjs/schema/implementation/query/field-get-query.js +45 -0
  98. package/cjs/schema/implementation/query/index.js +22 -0
  99. package/cjs/schema/implementation/query/singleton-get-query.js +27 -0
  100. package/cjs/schema/implementation/resource/collection-resource-info.js +58 -0
  101. package/cjs/schema/implementation/resource/container-resource-info.js +30 -0
  102. package/cjs/schema/implementation/resource/resource-info.js +39 -0
  103. package/cjs/schema/implementation/resource/singleton-resource-info.js +37 -0
  104. package/cjs/schema/implementation/schema-builder/extract-resource-metadata.util.js +84 -0
  105. package/cjs/schema/implementation/schema-builder/extract-type-metadata.util.js +94 -0
  106. package/cjs/schema/index.js +28 -0
  107. package/cjs/schema/interfaces/child-field-query.interface.js +2 -0
  108. package/cjs/schema/interfaces/data-type.metadata.js +2 -0
  109. package/cjs/schema/interfaces/resource-container.interface.js +2 -0
  110. package/cjs/schema/interfaces/resource.metadata.js +2 -0
  111. package/cjs/schema/opra-schema.definition.js +49 -0
  112. package/cjs/schema/type-helpers/extend-type.helper.js +65 -0
  113. package/cjs/schema/type-helpers/mixin-type.helper.js +46 -0
  114. package/cjs/schema/type-helpers/mixin.utils.js +32 -0
  115. package/cjs/schema/types.js +2 -0
  116. package/cjs/schema/utils/class.utils.js +8 -0
  117. package/cjs/schema/utils/clone-object.util.js +19 -0
  118. package/cjs/schema/utils/inspect.util.js +7 -0
  119. package/cjs/schema/utils/normalize-field-array.util.js +44 -0
  120. package/cjs/schema/utils/path-to-tree.util.js +26 -0
  121. package/cjs/schema/utils/string-compare.util.js +11 -0
  122. package/cjs/url/formats/boolean-format.js +25 -0
  123. package/cjs/url/formats/date-format.js +48 -0
  124. package/cjs/url/formats/filter-format.js +18 -0
  125. package/cjs/url/formats/format.js +6 -0
  126. package/cjs/url/formats/integer-format.js +20 -0
  127. package/cjs/url/formats/number-format.js +28 -0
  128. package/cjs/url/formats/string-format.js +28 -0
  129. package/cjs/url/index.js +8 -0
  130. package/cjs/url/opra-url-path-component.js +33 -0
  131. package/cjs/url/opra-url-path.js +128 -0
  132. package/cjs/url/opra-url-search-params.js +247 -0
  133. package/cjs/url/opra-url.js +299 -0
  134. package/cjs/url/utils/path-utils.js +86 -0
  135. package/cjs/utils/index.js +6 -0
  136. package/cjs/utils/is-url.js +8 -0
  137. package/cjs/utils/path-to-tree.js +28 -0
  138. package/cjs/utils/type-guards.js +46 -0
  139. package/esm/constants.d.ts +0 -0
  140. package/esm/constants.js +1 -0
  141. package/esm/exception/enums/issue-severity.enum.d.ts +13 -0
  142. package/esm/exception/enums/issue-severity.enum.js +20 -0
  143. package/esm/exception/error-issue.d.ts +9 -0
  144. package/esm/{types.js → exception/error-issue.js} +0 -0
  145. package/esm/exception/http-errors/bad-request.error.d.ts +10 -0
  146. package/esm/exception/http-errors/bad-request.error.js +18 -0
  147. package/esm/exception/http-errors/failed-dependency.error.d.ts +9 -0
  148. package/esm/exception/http-errors/failed-dependency.error.js +17 -0
  149. package/esm/exception/http-errors/forbidden.error.d.ts +11 -0
  150. package/esm/exception/http-errors/forbidden.error.js +19 -0
  151. package/esm/exception/http-errors/internal-server.error.d.ts +9 -0
  152. package/esm/exception/http-errors/internal-server.error.js +17 -0
  153. package/esm/exception/http-errors/method-not-allowed.error.d.ts +10 -0
  154. package/esm/exception/http-errors/method-not-allowed.error.js +18 -0
  155. package/esm/exception/http-errors/not-acceptable.error.d.ts +10 -0
  156. package/esm/exception/http-errors/not-acceptable.error.js +18 -0
  157. package/esm/exception/http-errors/not-found.error.d.ts +13 -0
  158. package/esm/exception/http-errors/not-found.error.js +21 -0
  159. package/esm/exception/http-errors/unauthorized.error.d.ts +10 -0
  160. package/esm/exception/http-errors/unauthorized.error.js +18 -0
  161. package/esm/exception/http-errors/unprocessable-entity.error.d.ts +9 -0
  162. package/esm/exception/http-errors/unprocessable-entity.error.js +17 -0
  163. package/esm/exception/index.d.ts +15 -0
  164. package/esm/exception/index.js +15 -0
  165. package/esm/exception/opra-exception.d.ts +15 -0
  166. package/esm/exception/opra-exception.js +52 -0
  167. package/esm/exception/resource-errors/resource-conflict.error.d.ts +5 -0
  168. package/esm/exception/resource-errors/resource-conflict.error.js +16 -0
  169. package/esm/exception/resource-errors/resource-not-found.error.d.ts +4 -0
  170. package/esm/exception/resource-errors/resource-not-found.error.js +16 -0
  171. package/esm/exception/wrap-exception.d.ts +2 -0
  172. package/esm/exception/wrap-exception.js +38 -0
  173. package/esm/filter/antlr/OpraFilterLexer.d.ts +78 -0
  174. package/esm/filter/antlr/OpraFilterLexer.js +381 -0
  175. package/esm/filter/antlr/OpraFilterParser.d.ts +365 -0
  176. package/esm/filter/antlr/OpraFilterParser.js +2022 -0
  177. package/esm/filter/antlr/OpraFilterVisitor.d.ts +290 -0
  178. package/esm/filter/antlr/OpraFilterVisitor.js +2 -0
  179. package/esm/filter/ast/abstract/ast.d.ts +5 -0
  180. package/esm/filter/ast/abstract/ast.js +6 -0
  181. package/esm/filter/ast/abstract/expression.d.ts +3 -0
  182. package/esm/filter/ast/abstract/expression.js +3 -0
  183. package/esm/filter/ast/abstract/literal.d.ts +6 -0
  184. package/esm/filter/ast/abstract/literal.js +10 -0
  185. package/esm/filter/ast/abstract/term.d.ts +3 -0
  186. package/esm/filter/ast/abstract/term.js +3 -0
  187. package/esm/filter/ast/expressions/arithmetic-expression.d.ts +13 -0
  188. package/esm/filter/ast/expressions/arithmetic-expression.js +24 -0
  189. package/esm/filter/ast/expressions/array-expression.d.ts +7 -0
  190. package/esm/filter/ast/expressions/array-expression.js +11 -0
  191. package/esm/filter/ast/expressions/comparison-expression.d.ts +10 -0
  192. package/esm/filter/ast/expressions/comparison-expression.js +14 -0
  193. package/esm/filter/ast/expressions/logical-expression.d.ts +8 -0
  194. package/esm/filter/ast/expressions/logical-expression.js +14 -0
  195. package/esm/filter/ast/expressions/parentheses-expression.d.ts +6 -0
  196. package/esm/filter/ast/expressions/parentheses-expression.js +11 -0
  197. package/esm/filter/ast/index.d.ts +16 -0
  198. package/esm/filter/ast/index.js +16 -0
  199. package/esm/filter/ast/terms/boolean-literal.d.ts +5 -0
  200. package/esm/filter/ast/terms/boolean-literal.js +6 -0
  201. package/esm/filter/ast/terms/date-literal.d.ts +6 -0
  202. package/esm/filter/ast/terms/date-literal.js +24 -0
  203. package/esm/filter/ast/terms/external-constant.d.ts +5 -0
  204. package/esm/filter/ast/terms/external-constant.js +9 -0
  205. package/esm/filter/ast/terms/null-literal.d.ts +5 -0
  206. package/esm/filter/ast/terms/null-literal.js +7 -0
  207. package/esm/filter/ast/terms/number-literal.d.ts +6 -0
  208. package/esm/filter/ast/terms/number-literal.js +36 -0
  209. package/esm/filter/ast/terms/qualified-identifier.d.ts +4 -0
  210. package/esm/filter/ast/terms/qualified-identifier.js +6 -0
  211. package/esm/filter/ast/terms/string-literal.d.ts +5 -0
  212. package/esm/filter/ast/terms/string-literal.js +10 -0
  213. package/esm/filter/ast/terms/time-literal.d.ts +6 -0
  214. package/esm/filter/ast/terms/time-literal.js +29 -0
  215. package/esm/filter/build.d.ts +31 -0
  216. package/esm/filter/build.js +105 -0
  217. package/esm/filter/error-listener.d.ts +8 -0
  218. package/esm/filter/error-listener.js +10 -0
  219. package/esm/filter/errors.d.ts +20 -0
  220. package/esm/filter/errors.js +15 -0
  221. package/esm/filter/filter-tree-visitor.d.ts +30 -0
  222. package/esm/filter/filter-tree-visitor.js +109 -0
  223. package/esm/filter/index.d.ts +5 -0
  224. package/esm/filter/index.js +5 -0
  225. package/esm/filter/parse.d.ts +2 -0
  226. package/esm/filter/parse.js +33 -0
  227. package/esm/filter/utils.d.ts +2 -0
  228. package/esm/filter/utils.js +21 -0
  229. package/esm/helpers/index.d.ts +1 -0
  230. package/esm/helpers/index.js +1 -0
  231. package/esm/{classes → helpers}/responsive-map.d.ts +0 -0
  232. package/esm/{classes → helpers}/responsive-map.js +1 -1
  233. package/esm/{enums → http/enums}/http-headers.enum.d.ts +9 -0
  234. package/esm/{enums → http/enums}/http-headers.enum.js +9 -0
  235. package/esm/{enums → http/enums}/http-status.enum.d.ts +0 -0
  236. package/esm/{enums → http/enums}/http-status.enum.js +0 -0
  237. package/esm/http/http-request.d.ts +34 -0
  238. package/esm/http/http-request.js +114 -0
  239. package/esm/http/index.d.ts +6 -0
  240. package/esm/http/index.js +6 -0
  241. package/esm/http/interfaces/client-http-headers.interface.d.ts +65 -0
  242. package/esm/http/interfaces/client-http-headers.interface.js +1 -0
  243. package/esm/http/interfaces/server-http-headers.interface.d.ts +1 -0
  244. package/esm/http/interfaces/server-http-headers.interface.js +1 -0
  245. package/esm/http/multipart/batch-multipart.d.ts +30 -0
  246. package/esm/http/multipart/batch-multipart.js +150 -0
  247. package/esm/http/multipart/http-request-content.d.ts +8 -0
  248. package/esm/http/multipart/http-request-content.js +12 -0
  249. package/esm/http/multipart/http-response-content.d.ts +7 -0
  250. package/esm/http/multipart/http-response-content.js +10 -0
  251. package/esm/http/multipart/index.d.ts +1 -0
  252. package/esm/http/multipart/index.js +1 -0
  253. package/esm/http/utils/normalize-headers.d.ts +1 -0
  254. package/esm/http/utils/normalize-headers.js +24 -0
  255. package/esm/i18n/i18n.d.ts +28 -0
  256. package/esm/i18n/i18n.js +170 -0
  257. package/esm/i18n/index.d.ts +5 -0
  258. package/esm/i18n/index.js +6 -0
  259. package/esm/i18n/string-utils.d.ts +2 -0
  260. package/esm/i18n/string-utils.js +8 -0
  261. package/esm/i18n/translate.d.ts +4 -0
  262. package/esm/i18n/translate.js +11 -0
  263. package/esm/index.d.ts +10 -5
  264. package/esm/index.js +10 -5
  265. package/esm/schema/constants.d.ts +8 -0
  266. package/esm/schema/constants.js +8 -0
  267. package/esm/schema/decorators/opr-collection-resource.decorator.d.ts +8 -0
  268. package/esm/schema/decorators/opr-collection-resource.decorator.js +19 -0
  269. package/esm/schema/decorators/opr-complex-type.decorator.d.ts +6 -0
  270. package/esm/schema/decorators/opr-complex-type.decorator.js +23 -0
  271. package/esm/schema/decorators/opr-field.decorator.d.ts +3 -0
  272. package/esm/schema/decorators/opr-field.decorator.js +24 -0
  273. package/esm/schema/decorators/opr-resolver.decorator.d.ts +8 -0
  274. package/esm/schema/decorators/opr-resolver.decorator.js +71 -0
  275. package/esm/schema/decorators/opr-simple-type.decorator.d.ts +6 -0
  276. package/esm/schema/decorators/opr-simple-type.decorator.js +14 -0
  277. package/esm/schema/decorators/opr-singleton-resource.decorator.d.ts +8 -0
  278. package/esm/schema/decorators/opr-singleton-resource.decorator.js +19 -0
  279. package/esm/schema/implementation/data-type/builtin/any.type.d.ts +2 -0
  280. package/esm/schema/implementation/data-type/builtin/any.type.js +6 -0
  281. package/esm/schema/implementation/data-type/builtin/base64-binary.type.d.ts +2 -0
  282. package/esm/schema/implementation/data-type/builtin/base64-binary.type.js +12 -0
  283. package/esm/schema/implementation/data-type/builtin/bigint.type.d.ts +2 -0
  284. package/esm/schema/implementation/data-type/builtin/bigint.type.js +12 -0
  285. package/esm/schema/implementation/data-type/builtin/boolean.type.d.ts +2 -0
  286. package/esm/schema/implementation/data-type/builtin/boolean.type.js +12 -0
  287. package/esm/schema/implementation/data-type/builtin/date-string.type.d.ts +2 -0
  288. package/esm/schema/implementation/data-type/builtin/date-string.type.js +12 -0
  289. package/esm/schema/implementation/data-type/builtin/date.type.d.ts +2 -0
  290. package/esm/schema/implementation/data-type/builtin/date.type.js +12 -0
  291. package/esm/schema/implementation/data-type/builtin/guid.type.d.ts +2 -0
  292. package/esm/schema/implementation/data-type/builtin/guid.type.js +12 -0
  293. package/esm/schema/implementation/data-type/builtin/integer.type.d.ts +2 -0
  294. package/esm/schema/implementation/data-type/builtin/integer.type.js +12 -0
  295. package/esm/schema/implementation/data-type/builtin/number.type.d.ts +2 -0
  296. package/esm/schema/implementation/data-type/builtin/number.type.js +12 -0
  297. package/esm/schema/implementation/data-type/builtin/object.type.d.ts +2 -0
  298. package/esm/schema/implementation/data-type/builtin/object.type.js +12 -0
  299. package/esm/schema/implementation/data-type/builtin/string.type.d.ts +2 -0
  300. package/esm/schema/implementation/data-type/builtin/string.type.js +12 -0
  301. package/esm/schema/implementation/data-type/builtin-data-types.d.ts +4 -0
  302. package/esm/schema/implementation/data-type/builtin-data-types.js +34 -0
  303. package/esm/schema/implementation/data-type/complex-type.d.ts +29 -0
  304. package/esm/schema/implementation/data-type/complex-type.js +107 -0
  305. package/esm/schema/implementation/data-type/data-type.d.ts +16 -0
  306. package/esm/schema/implementation/data-type/data-type.js +32 -0
  307. package/esm/schema/implementation/data-type/simple-type.d.ts +12 -0
  308. package/esm/schema/implementation/data-type/simple-type.js +17 -0
  309. package/esm/schema/implementation/data-type/union-type.d.ts +16 -0
  310. package/esm/schema/implementation/data-type/union-type.js +21 -0
  311. package/esm/schema/implementation/document-builder.d.ts +16 -0
  312. package/esm/schema/implementation/document-builder.js +135 -0
  313. package/esm/schema/implementation/opra-document.d.ts +44 -0
  314. package/esm/schema/implementation/opra-document.js +177 -0
  315. package/esm/schema/implementation/query/collection-count-query.d.ts +14 -0
  316. package/esm/schema/implementation/query/collection-count-query.js +15 -0
  317. package/esm/schema/implementation/query/collection-create-query.d.ts +18 -0
  318. package/esm/schema/implementation/query/collection-create-query.js +24 -0
  319. package/esm/schema/implementation/query/collection-delete-many-query.d.ts +14 -0
  320. package/esm/schema/implementation/query/collection-delete-many-query.js +15 -0
  321. package/esm/schema/implementation/query/collection-delete-query.d.ts +10 -0
  322. package/esm/schema/implementation/query/collection-delete-query.js +23 -0
  323. package/esm/schema/implementation/query/collection-get-query.d.ts +21 -0
  324. package/esm/schema/implementation/query/collection-get-query.js +34 -0
  325. package/esm/schema/implementation/query/collection-search-query.d.ts +30 -0
  326. package/esm/schema/implementation/query/collection-search-query.js +51 -0
  327. package/esm/schema/implementation/query/collection-update-many-query.d.ts +15 -0
  328. package/esm/schema/implementation/query/collection-update-many-query.js +17 -0
  329. package/esm/schema/implementation/query/collection-update-query.d.ts +19 -0
  330. package/esm/schema/implementation/query/collection-update-query.js +35 -0
  331. package/esm/schema/implementation/query/field-get-query.d.ts +30 -0
  332. package/esm/schema/implementation/query/field-get-query.js +41 -0
  333. package/esm/schema/implementation/query/index.d.ts +27 -0
  334. package/esm/schema/implementation/query/index.js +17 -0
  335. package/esm/schema/implementation/query/singleton-get-query.d.ts +20 -0
  336. package/esm/schema/implementation/query/singleton-get-query.js +23 -0
  337. package/esm/schema/implementation/resource/collection-resource-info.d.ts +19 -0
  338. package/esm/schema/implementation/resource/collection-resource-info.js +54 -0
  339. package/esm/schema/implementation/resource/container-resource-info.d.ts +13 -0
  340. package/esm/schema/implementation/resource/container-resource-info.js +26 -0
  341. package/esm/schema/implementation/resource/resource-info.d.ts +17 -0
  342. package/esm/schema/implementation/resource/resource-info.js +35 -0
  343. package/esm/schema/implementation/resource/singleton-resource-info.d.ts +14 -0
  344. package/esm/schema/implementation/resource/singleton-resource-info.js +33 -0
  345. package/esm/schema/implementation/schema-builder/extract-resource-metadata.util.d.ts +3 -0
  346. package/esm/schema/implementation/schema-builder/extract-resource-metadata.util.js +80 -0
  347. package/esm/schema/implementation/schema-builder/extract-type-metadata.util.d.ts +4 -0
  348. package/esm/schema/implementation/schema-builder/extract-type-metadata.util.js +89 -0
  349. package/esm/schema/index.d.ts +25 -0
  350. package/esm/schema/index.js +25 -0
  351. package/esm/schema/interfaces/child-field-query.interface.d.ts +4 -0
  352. package/esm/schema/interfaces/child-field-query.interface.js +1 -0
  353. package/esm/schema/interfaces/data-type.metadata.d.ts +18 -0
  354. package/esm/schema/interfaces/data-type.metadata.js +1 -0
  355. package/esm/schema/interfaces/resource-container.interface.d.ts +8 -0
  356. package/esm/schema/interfaces/resource-container.interface.js +1 -0
  357. package/esm/schema/interfaces/resource.metadata.d.ts +18 -0
  358. package/esm/schema/interfaces/resource.metadata.js +1 -0
  359. package/esm/schema/opra-schema.definition.d.ts +178 -0
  360. package/esm/schema/opra-schema.definition.js +46 -0
  361. package/esm/schema/type-helpers/extend-type.helper.d.ts +3 -0
  362. package/esm/schema/type-helpers/extend-type.helper.js +59 -0
  363. package/esm/schema/type-helpers/mixin-type.helper.d.ts +2 -0
  364. package/esm/schema/type-helpers/mixin-type.helper.js +41 -0
  365. package/esm/schema/type-helpers/mixin.utils.d.ts +3 -0
  366. package/esm/schema/type-helpers/mixin.utils.js +27 -0
  367. package/esm/{types.d.ts → schema/types.d.ts} +8 -1
  368. package/esm/schema/types.js +1 -0
  369. package/esm/schema/utils/class.utils.d.ts +2 -0
  370. package/esm/schema/utils/class.utils.js +4 -0
  371. package/esm/schema/utils/clone-object.util.d.ts +1 -0
  372. package/esm/schema/utils/clone-object.util.js +14 -0
  373. package/esm/schema/utils/inspect.util.d.ts +4 -0
  374. package/esm/schema/utils/inspect.util.js +4 -0
  375. package/esm/schema/utils/normalize-field-array.util.d.ts +3 -0
  376. package/esm/schema/utils/normalize-field-array.util.js +40 -0
  377. package/esm/schema/utils/path-to-tree.util.d.ts +4 -0
  378. package/esm/schema/utils/path-to-tree.util.js +22 -0
  379. package/esm/schema/utils/string-compare.util.d.ts +1 -0
  380. package/esm/schema/utils/string-compare.util.js +7 -0
  381. package/esm/url/formats/boolean-format.d.ts +5 -0
  382. package/esm/url/formats/boolean-format.js +21 -0
  383. package/esm/url/formats/date-format.d.ts +16 -0
  384. package/esm/url/formats/date-format.js +44 -0
  385. package/esm/url/formats/filter-format.d.ts +6 -0
  386. package/esm/url/formats/filter-format.js +14 -0
  387. package/esm/url/formats/format.d.ts +4 -0
  388. package/esm/url/formats/format.js +2 -0
  389. package/esm/url/formats/integer-format.d.ts +9 -0
  390. package/esm/url/formats/integer-format.js +16 -0
  391. package/esm/url/formats/number-format.d.ts +12 -0
  392. package/esm/url/formats/number-format.js +24 -0
  393. package/esm/url/formats/string-format.d.ts +14 -0
  394. package/esm/url/formats/string-format.js +24 -0
  395. package/esm/url/index.d.ts +5 -0
  396. package/esm/url/index.js +5 -0
  397. package/esm/url/opra-url-path-component.d.ts +15 -0
  398. package/esm/url/opra-url-path-component.js +29 -0
  399. package/esm/url/opra-url-path.d.ts +30 -0
  400. package/esm/url/opra-url-path.js +124 -0
  401. package/esm/url/opra-url-search-params.d.ts +46 -0
  402. package/esm/url/opra-url-search-params.js +243 -0
  403. package/esm/url/opra-url.d.ts +79 -0
  404. package/esm/url/opra-url.js +295 -0
  405. package/esm/url/utils/path-utils.d.ts +8 -0
  406. package/esm/url/utils/path-utils.js +78 -0
  407. package/esm/utils/index.d.ts +3 -0
  408. package/esm/utils/index.js +3 -0
  409. package/esm/utils/is-url.d.ts +1 -0
  410. package/esm/utils/is-url.js +4 -0
  411. package/esm/utils/path-to-tree.d.ts +4 -0
  412. package/esm/utils/path-to-tree.js +24 -0
  413. package/esm/utils/type-guards.d.ts +9 -0
  414. package/esm/utils/type-guards.js +37 -0
  415. package/package.json +30 -10
  416. package/umd/opra-common.umd.min.js +1 -0
  417. package/cjs/classes/headers-map.js +0 -18
  418. package/esm/classes/headers-map.d.ts +0 -5
  419. package/esm/classes/headers-map.js +0 -14
@@ -0,0 +1,2070 @@
1
+ "use strict";
2
+ /* eslint-disable */
3
+ // Generated from ../antlr/OpraFilter.g4 by ANTLR 4.9.0-SNAPSHOT
4
+ // noinspection ES6UnusedImports,ExceptionCaughtLocallyJS
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.InfinityContext = exports.NullContext = exports.BooleanContext = exports.LogOpContext = exports.PolarOpContext = exports.ArthOpContext = exports.CompOpContext = exports.StringLiteralContext = exports.TimeLiteralContext = exports.DateTimeLiteralContext = exports.DateLiteralContext = exports.NullLiteralContext = exports.BooleanLiteralContext = exports.InfinityLiteralContext = exports.NumberLiteralContext = exports.LiteralContext = exports.IdentifierContext = exports.ExternalConstantContext = exports.QualifiedIdentifierContext = exports.PluralDateTimePrecisionContext = exports.DateTimePrecisionContext = exports.UnitContext = exports.ParamListContext = exports.FunctionContext = exports.NumberIndexContext = exports.MemberIndexContext = exports.IndexerContext = exports.MemberInvocationContext = exports.InvocationContext = exports.InvocableContext = exports.ExternalConstantTermContext = exports.QualifiedIdentifierTermContext = exports.LiteralTermContext = exports.TermContext = exports.ArrayExpressionContext = exports.ParenthesizedExpressionContext = exports.LogicalExpressionContext = exports.ComparisonExpressionContext = exports.ArithmeticExpressionContext = exports.PolarityExpressionContext = exports.TermExpressionContext = exports.ExpressionContext = exports.RootContext = exports.OpraFilterParser = void 0;
7
+ const tslib_1 = require("tslib");
8
+ const ATN_1 = require("antlr4ts/atn/ATN");
9
+ const ATNDeserializer_1 = require("antlr4ts/atn/ATNDeserializer");
10
+ const FailedPredicateException_1 = require("antlr4ts/FailedPredicateException");
11
+ const NoViableAltException_1 = require("antlr4ts/NoViableAltException");
12
+ const Parser_1 = require("antlr4ts/Parser");
13
+ const ParserRuleContext_1 = require("antlr4ts/ParserRuleContext");
14
+ const ParserATNSimulator_1 = require("antlr4ts/atn/ParserATNSimulator");
15
+ const RecognitionException_1 = require("antlr4ts/RecognitionException");
16
+ const Token_1 = require("antlr4ts/Token");
17
+ const VocabularyImpl_1 = require("antlr4ts/VocabularyImpl");
18
+ const Utils = tslib_1.__importStar(require("antlr4ts/misc/Utils"));
19
+ class OpraFilterParser extends Parser_1.Parser {
20
+ static T__0 = 1;
21
+ static T__1 = 2;
22
+ static T__2 = 3;
23
+ static T__3 = 4;
24
+ static T__4 = 5;
25
+ static T__5 = 6;
26
+ static T__6 = 7;
27
+ static T__7 = 8;
28
+ static T__8 = 9;
29
+ static T__9 = 10;
30
+ static T__10 = 11;
31
+ static T__11 = 12;
32
+ static T__12 = 13;
33
+ static T__13 = 14;
34
+ static T__14 = 15;
35
+ static T__15 = 16;
36
+ static T__16 = 17;
37
+ static T__17 = 18;
38
+ static T__18 = 19;
39
+ static T__19 = 20;
40
+ static T__20 = 21;
41
+ static T__21 = 22;
42
+ static T__22 = 23;
43
+ static T__23 = 24;
44
+ static T__24 = 25;
45
+ static T__25 = 26;
46
+ static T__26 = 27;
47
+ static T__27 = 28;
48
+ static T__28 = 29;
49
+ static T__29 = 30;
50
+ static T__30 = 31;
51
+ static T__31 = 32;
52
+ static T__32 = 33;
53
+ static T__33 = 34;
54
+ static T__34 = 35;
55
+ static T__35 = 36;
56
+ static T__36 = 37;
57
+ static T__37 = 38;
58
+ static T__38 = 39;
59
+ static T__39 = 40;
60
+ static T__40 = 41;
61
+ static T__41 = 42;
62
+ static T__42 = 43;
63
+ static T__43 = 44;
64
+ static T__44 = 45;
65
+ static T__45 = 46;
66
+ static DATE = 47;
67
+ static DATETIME = 48;
68
+ static TIME = 49;
69
+ static IDENTIFIER = 50;
70
+ static STRING = 51;
71
+ static NUMBER = 52;
72
+ static INTEGER = 53;
73
+ static WHITESPACE = 54;
74
+ static COMMENT = 55;
75
+ static LINE_COMMENT = 56;
76
+ static RULE_root = 0;
77
+ static RULE_expression = 1;
78
+ static RULE_term = 2;
79
+ static RULE_invocable = 3;
80
+ static RULE_invocation = 4;
81
+ static RULE_indexer = 5;
82
+ static RULE_function = 6;
83
+ static RULE_paramList = 7;
84
+ static RULE_unit = 8;
85
+ static RULE_dateTimePrecision = 9;
86
+ static RULE_pluralDateTimePrecision = 10;
87
+ static RULE_qualifiedIdentifier = 11;
88
+ static RULE_externalConstant = 12;
89
+ static RULE_identifier = 13;
90
+ static RULE_literal = 14;
91
+ static RULE_compOp = 15;
92
+ static RULE_arthOp = 16;
93
+ static RULE_polarOp = 17;
94
+ static RULE_logOp = 18;
95
+ static RULE_boolean = 19;
96
+ static RULE_null = 20;
97
+ static RULE_infinity = 21;
98
+ // tslint:disable:no-trailing-whitespace
99
+ static ruleNames = [
100
+ "root", "expression", "term", "invocable", "invocation", "indexer", "function",
101
+ "paramList", "unit", "dateTimePrecision", "pluralDateTimePrecision", "qualifiedIdentifier",
102
+ "externalConstant", "identifier", "literal", "compOp", "arthOp", "polarOp",
103
+ "logOp", "boolean", "null", "infinity",
104
+ ];
105
+ static _LITERAL_NAMES = [
106
+ undefined, "'('", "')'", "'['", "','", "']'", "'year'", "'month'", "'week'",
107
+ "'day'", "'hour'", "'minute'", "'second'", "'millisecond'", "'years'",
108
+ "'months'", "'weeks'", "'days'", "'hours'", "'minutes'", "'seconds'",
109
+ "'milliseconds'", "'.'", "'@'", "'<='", "'<'", "'>'", "'>='", "'='", "'!='",
110
+ "'in'", "'!in'", "'like'", "'!like'", "'ilike'", "'!ilike'", "'+'", "'-'",
111
+ "'*'", "'/'", "'and'", "'or'", "'true'", "'false'", "'null'", "'Infinity'",
112
+ "'infinity'",
113
+ ];
114
+ static _SYMBOLIC_NAMES = [
115
+ undefined, undefined, undefined, undefined, undefined, undefined, undefined,
116
+ undefined, undefined, undefined, undefined, undefined, undefined, undefined,
117
+ undefined, undefined, undefined, undefined, undefined, undefined, undefined,
118
+ undefined, undefined, undefined, undefined, undefined, undefined, undefined,
119
+ undefined, undefined, undefined, undefined, undefined, undefined, undefined,
120
+ undefined, undefined, undefined, undefined, undefined, undefined, undefined,
121
+ undefined, undefined, undefined, undefined, undefined, "DATE", "DATETIME",
122
+ "TIME", "IDENTIFIER", "STRING", "NUMBER", "INTEGER", "WHITESPACE", "COMMENT",
123
+ "LINE_COMMENT",
124
+ ];
125
+ static VOCABULARY = new VocabularyImpl_1.VocabularyImpl(OpraFilterParser._LITERAL_NAMES, OpraFilterParser._SYMBOLIC_NAMES, []);
126
+ // @Override
127
+ // @NotNull
128
+ get vocabulary() {
129
+ return OpraFilterParser.VOCABULARY;
130
+ }
131
+ // tslint:enable:no-trailing-whitespace
132
+ // @Override
133
+ get grammarFileName() { return "OpraFilter.g4"; }
134
+ // @Override
135
+ get ruleNames() { return OpraFilterParser.ruleNames; }
136
+ // @Override
137
+ get serializedATN() { return OpraFilterParser._serializedATN; }
138
+ createFailedPredicateException(predicate, message) {
139
+ return new FailedPredicateException_1.FailedPredicateException(this, predicate, message);
140
+ }
141
+ constructor(input) {
142
+ super(input);
143
+ this._interp = new ParserATNSimulator_1.ParserATNSimulator(OpraFilterParser._ATN, this);
144
+ }
145
+ // @RuleVersion(0)
146
+ root() {
147
+ let _localctx = new RootContext(this._ctx, this.state);
148
+ this.enterRule(_localctx, 0, OpraFilterParser.RULE_root);
149
+ try {
150
+ this.enterOuterAlt(_localctx, 1);
151
+ {
152
+ this.state = 44;
153
+ this.expression(0);
154
+ this.state = 45;
155
+ this.match(OpraFilterParser.EOF);
156
+ }
157
+ }
158
+ catch (re) {
159
+ if (re instanceof RecognitionException_1.RecognitionException) {
160
+ _localctx.exception = re;
161
+ this._errHandler.reportError(this, re);
162
+ this._errHandler.recover(this, re);
163
+ }
164
+ else {
165
+ throw re;
166
+ }
167
+ }
168
+ finally {
169
+ this.exitRule();
170
+ }
171
+ return _localctx;
172
+ }
173
+ // @RuleVersion(0)
174
+ expression(_p) {
175
+ if (_p === undefined) {
176
+ _p = 0;
177
+ }
178
+ let _parentctx = this._ctx;
179
+ let _parentState = this.state;
180
+ let _localctx = new ExpressionContext(this._ctx, _parentState);
181
+ let _prevctx = _localctx;
182
+ let _startState = 2;
183
+ this.enterRecursionRule(_localctx, 2, OpraFilterParser.RULE_expression, _p);
184
+ let _la;
185
+ try {
186
+ let _alt;
187
+ this.enterOuterAlt(_localctx, 1);
188
+ {
189
+ this.state = 67;
190
+ this._errHandler.sync(this);
191
+ switch (this._input.LA(1)) {
192
+ case OpraFilterParser.T__22:
193
+ case OpraFilterParser.T__41:
194
+ case OpraFilterParser.T__42:
195
+ case OpraFilterParser.T__43:
196
+ case OpraFilterParser.T__44:
197
+ case OpraFilterParser.T__45:
198
+ case OpraFilterParser.DATE:
199
+ case OpraFilterParser.DATETIME:
200
+ case OpraFilterParser.TIME:
201
+ case OpraFilterParser.IDENTIFIER:
202
+ case OpraFilterParser.STRING:
203
+ case OpraFilterParser.NUMBER:
204
+ {
205
+ _localctx = new TermExpressionContext(_localctx);
206
+ this._ctx = _localctx;
207
+ _prevctx = _localctx;
208
+ this.state = 48;
209
+ this.term();
210
+ }
211
+ break;
212
+ case OpraFilterParser.T__35:
213
+ case OpraFilterParser.T__36:
214
+ {
215
+ _localctx = new PolarityExpressionContext(_localctx);
216
+ this._ctx = _localctx;
217
+ _prevctx = _localctx;
218
+ this.state = 49;
219
+ this.polarOp();
220
+ this.state = 50;
221
+ this.expression(6);
222
+ }
223
+ break;
224
+ case OpraFilterParser.T__0:
225
+ {
226
+ _localctx = new ParenthesizedExpressionContext(_localctx);
227
+ this._ctx = _localctx;
228
+ _prevctx = _localctx;
229
+ this.state = 52;
230
+ this.match(OpraFilterParser.T__0);
231
+ this.state = 53;
232
+ this.expression(0);
233
+ this.state = 54;
234
+ this.match(OpraFilterParser.T__1);
235
+ }
236
+ break;
237
+ case OpraFilterParser.T__2:
238
+ {
239
+ _localctx = new ArrayExpressionContext(_localctx);
240
+ this._ctx = _localctx;
241
+ _prevctx = _localctx;
242
+ this.state = 56;
243
+ this.match(OpraFilterParser.T__2);
244
+ this.state = 57;
245
+ this.expression(0);
246
+ this.state = 62;
247
+ this._errHandler.sync(this);
248
+ _la = this._input.LA(1);
249
+ while (_la === OpraFilterParser.T__3) {
250
+ {
251
+ {
252
+ this.state = 58;
253
+ this.match(OpraFilterParser.T__3);
254
+ this.state = 59;
255
+ this.expression(0);
256
+ }
257
+ }
258
+ this.state = 64;
259
+ this._errHandler.sync(this);
260
+ _la = this._input.LA(1);
261
+ }
262
+ this.state = 65;
263
+ this.match(OpraFilterParser.T__4);
264
+ }
265
+ break;
266
+ default:
267
+ throw new NoViableAltException_1.NoViableAltException(this);
268
+ }
269
+ this._ctx._stop = this._input.tryLT(-1);
270
+ this.state = 83;
271
+ this._errHandler.sync(this);
272
+ _alt = this.interpreter.adaptivePredict(this._input, 3, this._ctx);
273
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
274
+ if (_alt === 1) {
275
+ if (this._parseListeners != null) {
276
+ this.triggerExitRuleEvent();
277
+ }
278
+ _prevctx = _localctx;
279
+ {
280
+ this.state = 81;
281
+ this._errHandler.sync(this);
282
+ switch (this.interpreter.adaptivePredict(this._input, 2, this._ctx)) {
283
+ case 1:
284
+ {
285
+ _localctx = new ArithmeticExpressionContext(new ExpressionContext(_parentctx, _parentState));
286
+ this.pushNewRecursionContext(_localctx, _startState, OpraFilterParser.RULE_expression);
287
+ this.state = 69;
288
+ if (!(this.precpred(this._ctx, 5))) {
289
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 5)");
290
+ }
291
+ this.state = 70;
292
+ this.arthOp();
293
+ this.state = 71;
294
+ this.expression(6);
295
+ }
296
+ break;
297
+ case 2:
298
+ {
299
+ _localctx = new ComparisonExpressionContext(new ExpressionContext(_parentctx, _parentState));
300
+ this.pushNewRecursionContext(_localctx, _startState, OpraFilterParser.RULE_expression);
301
+ this.state = 73;
302
+ if (!(this.precpred(this._ctx, 4))) {
303
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 4)");
304
+ }
305
+ this.state = 74;
306
+ this.compOp();
307
+ this.state = 75;
308
+ this.expression(5);
309
+ }
310
+ break;
311
+ case 3:
312
+ {
313
+ _localctx = new LogicalExpressionContext(new ExpressionContext(_parentctx, _parentState));
314
+ this.pushNewRecursionContext(_localctx, _startState, OpraFilterParser.RULE_expression);
315
+ this.state = 77;
316
+ if (!(this.precpred(this._ctx, 3))) {
317
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 3)");
318
+ }
319
+ this.state = 78;
320
+ this.logOp();
321
+ this.state = 79;
322
+ this.expression(4);
323
+ }
324
+ break;
325
+ }
326
+ }
327
+ }
328
+ this.state = 85;
329
+ this._errHandler.sync(this);
330
+ _alt = this.interpreter.adaptivePredict(this._input, 3, this._ctx);
331
+ }
332
+ }
333
+ }
334
+ catch (re) {
335
+ if (re instanceof RecognitionException_1.RecognitionException) {
336
+ _localctx.exception = re;
337
+ this._errHandler.reportError(this, re);
338
+ this._errHandler.recover(this, re);
339
+ }
340
+ else {
341
+ throw re;
342
+ }
343
+ }
344
+ finally {
345
+ this.unrollRecursionContexts(_parentctx);
346
+ }
347
+ return _localctx;
348
+ }
349
+ // @RuleVersion(0)
350
+ term() {
351
+ let _localctx = new TermContext(this._ctx, this.state);
352
+ this.enterRule(_localctx, 4, OpraFilterParser.RULE_term);
353
+ try {
354
+ this.state = 89;
355
+ this._errHandler.sync(this);
356
+ switch (this._input.LA(1)) {
357
+ case OpraFilterParser.T__41:
358
+ case OpraFilterParser.T__42:
359
+ case OpraFilterParser.T__43:
360
+ case OpraFilterParser.T__44:
361
+ case OpraFilterParser.T__45:
362
+ case OpraFilterParser.DATE:
363
+ case OpraFilterParser.DATETIME:
364
+ case OpraFilterParser.TIME:
365
+ case OpraFilterParser.STRING:
366
+ case OpraFilterParser.NUMBER:
367
+ _localctx = new LiteralTermContext(_localctx);
368
+ this.enterOuterAlt(_localctx, 1);
369
+ {
370
+ this.state = 86;
371
+ this.literal();
372
+ }
373
+ break;
374
+ case OpraFilterParser.IDENTIFIER:
375
+ _localctx = new QualifiedIdentifierTermContext(_localctx);
376
+ this.enterOuterAlt(_localctx, 2);
377
+ {
378
+ this.state = 87;
379
+ this.qualifiedIdentifier();
380
+ }
381
+ break;
382
+ case OpraFilterParser.T__22:
383
+ _localctx = new ExternalConstantTermContext(_localctx);
384
+ this.enterOuterAlt(_localctx, 3);
385
+ {
386
+ this.state = 88;
387
+ this.externalConstant();
388
+ }
389
+ break;
390
+ default:
391
+ throw new NoViableAltException_1.NoViableAltException(this);
392
+ }
393
+ }
394
+ catch (re) {
395
+ if (re instanceof RecognitionException_1.RecognitionException) {
396
+ _localctx.exception = re;
397
+ this._errHandler.reportError(this, re);
398
+ this._errHandler.recover(this, re);
399
+ }
400
+ else {
401
+ throw re;
402
+ }
403
+ }
404
+ finally {
405
+ this.exitRule();
406
+ }
407
+ return _localctx;
408
+ }
409
+ // @RuleVersion(0)
410
+ invocable() {
411
+ let _localctx = new InvocableContext(this._ctx, this.state);
412
+ this.enterRule(_localctx, 6, OpraFilterParser.RULE_invocable);
413
+ try {
414
+ this.enterOuterAlt(_localctx, 1);
415
+ {
416
+ this.state = 91;
417
+ this.function();
418
+ }
419
+ }
420
+ catch (re) {
421
+ if (re instanceof RecognitionException_1.RecognitionException) {
422
+ _localctx.exception = re;
423
+ this._errHandler.reportError(this, re);
424
+ this._errHandler.recover(this, re);
425
+ }
426
+ else {
427
+ throw re;
428
+ }
429
+ }
430
+ finally {
431
+ this.exitRule();
432
+ }
433
+ return _localctx;
434
+ }
435
+ // @RuleVersion(0)
436
+ invocation() {
437
+ let _localctx = new InvocationContext(this._ctx, this.state);
438
+ this.enterRule(_localctx, 8, OpraFilterParser.RULE_invocation);
439
+ try {
440
+ _localctx = new MemberInvocationContext(_localctx);
441
+ this.enterOuterAlt(_localctx, 1);
442
+ {
443
+ this.state = 93;
444
+ this.identifier();
445
+ }
446
+ }
447
+ catch (re) {
448
+ if (re instanceof RecognitionException_1.RecognitionException) {
449
+ _localctx.exception = re;
450
+ this._errHandler.reportError(this, re);
451
+ this._errHandler.recover(this, re);
452
+ }
453
+ else {
454
+ throw re;
455
+ }
456
+ }
457
+ finally {
458
+ this.exitRule();
459
+ }
460
+ return _localctx;
461
+ }
462
+ // @RuleVersion(0)
463
+ indexer() {
464
+ let _localctx = new IndexerContext(this._ctx, this.state);
465
+ this.enterRule(_localctx, 10, OpraFilterParser.RULE_indexer);
466
+ try {
467
+ this.state = 97;
468
+ this._errHandler.sync(this);
469
+ switch (this._input.LA(1)) {
470
+ case OpraFilterParser.IDENTIFIER:
471
+ _localctx = new MemberIndexContext(_localctx);
472
+ this.enterOuterAlt(_localctx, 1);
473
+ {
474
+ this.state = 95;
475
+ this.identifier();
476
+ }
477
+ break;
478
+ case OpraFilterParser.INTEGER:
479
+ _localctx = new NumberIndexContext(_localctx);
480
+ this.enterOuterAlt(_localctx, 2);
481
+ {
482
+ this.state = 96;
483
+ this.match(OpraFilterParser.INTEGER);
484
+ }
485
+ break;
486
+ default:
487
+ throw new NoViableAltException_1.NoViableAltException(this);
488
+ }
489
+ }
490
+ catch (re) {
491
+ if (re instanceof RecognitionException_1.RecognitionException) {
492
+ _localctx.exception = re;
493
+ this._errHandler.reportError(this, re);
494
+ this._errHandler.recover(this, re);
495
+ }
496
+ else {
497
+ throw re;
498
+ }
499
+ }
500
+ finally {
501
+ this.exitRule();
502
+ }
503
+ return _localctx;
504
+ }
505
+ // @RuleVersion(0)
506
+ function() {
507
+ let _localctx = new FunctionContext(this._ctx, this.state);
508
+ this.enterRule(_localctx, 12, OpraFilterParser.RULE_function);
509
+ let _la;
510
+ try {
511
+ this.enterOuterAlt(_localctx, 1);
512
+ {
513
+ this.state = 99;
514
+ this.identifier();
515
+ this.state = 100;
516
+ this.match(OpraFilterParser.T__0);
517
+ this.state = 102;
518
+ this._errHandler.sync(this);
519
+ _la = this._input.LA(1);
520
+ if ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << OpraFilterParser.T__0) | (1 << OpraFilterParser.T__2) | (1 << OpraFilterParser.T__22))) !== 0) || ((((_la - 36)) & ~0x1F) === 0 && ((1 << (_la - 36)) & ((1 << (OpraFilterParser.T__35 - 36)) | (1 << (OpraFilterParser.T__36 - 36)) | (1 << (OpraFilterParser.T__41 - 36)) | (1 << (OpraFilterParser.T__42 - 36)) | (1 << (OpraFilterParser.T__43 - 36)) | (1 << (OpraFilterParser.T__44 - 36)) | (1 << (OpraFilterParser.T__45 - 36)) | (1 << (OpraFilterParser.DATE - 36)) | (1 << (OpraFilterParser.DATETIME - 36)) | (1 << (OpraFilterParser.TIME - 36)) | (1 << (OpraFilterParser.IDENTIFIER - 36)) | (1 << (OpraFilterParser.STRING - 36)) | (1 << (OpraFilterParser.NUMBER - 36)))) !== 0)) {
521
+ {
522
+ this.state = 101;
523
+ this.paramList();
524
+ }
525
+ }
526
+ this.state = 104;
527
+ this.match(OpraFilterParser.T__1);
528
+ }
529
+ }
530
+ catch (re) {
531
+ if (re instanceof RecognitionException_1.RecognitionException) {
532
+ _localctx.exception = re;
533
+ this._errHandler.reportError(this, re);
534
+ this._errHandler.recover(this, re);
535
+ }
536
+ else {
537
+ throw re;
538
+ }
539
+ }
540
+ finally {
541
+ this.exitRule();
542
+ }
543
+ return _localctx;
544
+ }
545
+ // @RuleVersion(0)
546
+ paramList() {
547
+ let _localctx = new ParamListContext(this._ctx, this.state);
548
+ this.enterRule(_localctx, 14, OpraFilterParser.RULE_paramList);
549
+ let _la;
550
+ try {
551
+ this.enterOuterAlt(_localctx, 1);
552
+ {
553
+ this.state = 106;
554
+ this.expression(0);
555
+ this.state = 111;
556
+ this._errHandler.sync(this);
557
+ _la = this._input.LA(1);
558
+ while (_la === OpraFilterParser.T__3) {
559
+ {
560
+ {
561
+ this.state = 107;
562
+ this.match(OpraFilterParser.T__3);
563
+ this.state = 108;
564
+ this.expression(0);
565
+ }
566
+ }
567
+ this.state = 113;
568
+ this._errHandler.sync(this);
569
+ _la = this._input.LA(1);
570
+ }
571
+ }
572
+ }
573
+ catch (re) {
574
+ if (re instanceof RecognitionException_1.RecognitionException) {
575
+ _localctx.exception = re;
576
+ this._errHandler.reportError(this, re);
577
+ this._errHandler.recover(this, re);
578
+ }
579
+ else {
580
+ throw re;
581
+ }
582
+ }
583
+ finally {
584
+ this.exitRule();
585
+ }
586
+ return _localctx;
587
+ }
588
+ // @RuleVersion(0)
589
+ unit() {
590
+ let _localctx = new UnitContext(this._ctx, this.state);
591
+ this.enterRule(_localctx, 16, OpraFilterParser.RULE_unit);
592
+ try {
593
+ this.state = 117;
594
+ this._errHandler.sync(this);
595
+ switch (this._input.LA(1)) {
596
+ case OpraFilterParser.T__5:
597
+ case OpraFilterParser.T__6:
598
+ case OpraFilterParser.T__7:
599
+ case OpraFilterParser.T__8:
600
+ case OpraFilterParser.T__9:
601
+ case OpraFilterParser.T__10:
602
+ case OpraFilterParser.T__11:
603
+ case OpraFilterParser.T__12:
604
+ this.enterOuterAlt(_localctx, 1);
605
+ {
606
+ this.state = 114;
607
+ this.dateTimePrecision();
608
+ }
609
+ break;
610
+ case OpraFilterParser.T__13:
611
+ case OpraFilterParser.T__14:
612
+ case OpraFilterParser.T__15:
613
+ case OpraFilterParser.T__16:
614
+ case OpraFilterParser.T__17:
615
+ case OpraFilterParser.T__18:
616
+ case OpraFilterParser.T__19:
617
+ case OpraFilterParser.T__20:
618
+ this.enterOuterAlt(_localctx, 2);
619
+ {
620
+ this.state = 115;
621
+ this.pluralDateTimePrecision();
622
+ }
623
+ break;
624
+ case OpraFilterParser.STRING:
625
+ this.enterOuterAlt(_localctx, 3);
626
+ {
627
+ this.state = 116;
628
+ this.match(OpraFilterParser.STRING);
629
+ }
630
+ break;
631
+ default:
632
+ throw new NoViableAltException_1.NoViableAltException(this);
633
+ }
634
+ }
635
+ catch (re) {
636
+ if (re instanceof RecognitionException_1.RecognitionException) {
637
+ _localctx.exception = re;
638
+ this._errHandler.reportError(this, re);
639
+ this._errHandler.recover(this, re);
640
+ }
641
+ else {
642
+ throw re;
643
+ }
644
+ }
645
+ finally {
646
+ this.exitRule();
647
+ }
648
+ return _localctx;
649
+ }
650
+ // @RuleVersion(0)
651
+ dateTimePrecision() {
652
+ let _localctx = new DateTimePrecisionContext(this._ctx, this.state);
653
+ this.enterRule(_localctx, 18, OpraFilterParser.RULE_dateTimePrecision);
654
+ let _la;
655
+ try {
656
+ this.enterOuterAlt(_localctx, 1);
657
+ {
658
+ this.state = 119;
659
+ _la = this._input.LA(1);
660
+ if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << OpraFilterParser.T__5) | (1 << OpraFilterParser.T__6) | (1 << OpraFilterParser.T__7) | (1 << OpraFilterParser.T__8) | (1 << OpraFilterParser.T__9) | (1 << OpraFilterParser.T__10) | (1 << OpraFilterParser.T__11) | (1 << OpraFilterParser.T__12))) !== 0))) {
661
+ this._errHandler.recoverInline(this);
662
+ }
663
+ else {
664
+ if (this._input.LA(1) === Token_1.Token.EOF) {
665
+ this.matchedEOF = true;
666
+ }
667
+ this._errHandler.reportMatch(this);
668
+ this.consume();
669
+ }
670
+ }
671
+ }
672
+ catch (re) {
673
+ if (re instanceof RecognitionException_1.RecognitionException) {
674
+ _localctx.exception = re;
675
+ this._errHandler.reportError(this, re);
676
+ this._errHandler.recover(this, re);
677
+ }
678
+ else {
679
+ throw re;
680
+ }
681
+ }
682
+ finally {
683
+ this.exitRule();
684
+ }
685
+ return _localctx;
686
+ }
687
+ // @RuleVersion(0)
688
+ pluralDateTimePrecision() {
689
+ let _localctx = new PluralDateTimePrecisionContext(this._ctx, this.state);
690
+ this.enterRule(_localctx, 20, OpraFilterParser.RULE_pluralDateTimePrecision);
691
+ let _la;
692
+ try {
693
+ this.enterOuterAlt(_localctx, 1);
694
+ {
695
+ this.state = 121;
696
+ _la = this._input.LA(1);
697
+ if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << OpraFilterParser.T__13) | (1 << OpraFilterParser.T__14) | (1 << OpraFilterParser.T__15) | (1 << OpraFilterParser.T__16) | (1 << OpraFilterParser.T__17) | (1 << OpraFilterParser.T__18) | (1 << OpraFilterParser.T__19) | (1 << OpraFilterParser.T__20))) !== 0))) {
698
+ this._errHandler.recoverInline(this);
699
+ }
700
+ else {
701
+ if (this._input.LA(1) === Token_1.Token.EOF) {
702
+ this.matchedEOF = true;
703
+ }
704
+ this._errHandler.reportMatch(this);
705
+ this.consume();
706
+ }
707
+ }
708
+ }
709
+ catch (re) {
710
+ if (re instanceof RecognitionException_1.RecognitionException) {
711
+ _localctx.exception = re;
712
+ this._errHandler.reportError(this, re);
713
+ this._errHandler.recover(this, re);
714
+ }
715
+ else {
716
+ throw re;
717
+ }
718
+ }
719
+ finally {
720
+ this.exitRule();
721
+ }
722
+ return _localctx;
723
+ }
724
+ // @RuleVersion(0)
725
+ qualifiedIdentifier() {
726
+ let _localctx = new QualifiedIdentifierContext(this._ctx, this.state);
727
+ this.enterRule(_localctx, 22, OpraFilterParser.RULE_qualifiedIdentifier);
728
+ try {
729
+ let _alt;
730
+ this.enterOuterAlt(_localctx, 1);
731
+ {
732
+ this.state = 128;
733
+ this._errHandler.sync(this);
734
+ _alt = this.interpreter.adaptivePredict(this._input, 9, this._ctx);
735
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
736
+ if (_alt === 1) {
737
+ {
738
+ {
739
+ this.state = 123;
740
+ this.identifier();
741
+ this.state = 124;
742
+ this.match(OpraFilterParser.T__21);
743
+ }
744
+ }
745
+ }
746
+ this.state = 130;
747
+ this._errHandler.sync(this);
748
+ _alt = this.interpreter.adaptivePredict(this._input, 9, this._ctx);
749
+ }
750
+ this.state = 131;
751
+ this.identifier();
752
+ }
753
+ }
754
+ catch (re) {
755
+ if (re instanceof RecognitionException_1.RecognitionException) {
756
+ _localctx.exception = re;
757
+ this._errHandler.reportError(this, re);
758
+ this._errHandler.recover(this, re);
759
+ }
760
+ else {
761
+ throw re;
762
+ }
763
+ }
764
+ finally {
765
+ this.exitRule();
766
+ }
767
+ return _localctx;
768
+ }
769
+ // @RuleVersion(0)
770
+ externalConstant() {
771
+ let _localctx = new ExternalConstantContext(this._ctx, this.state);
772
+ this.enterRule(_localctx, 24, OpraFilterParser.RULE_externalConstant);
773
+ let _la;
774
+ try {
775
+ this.enterOuterAlt(_localctx, 1);
776
+ {
777
+ this.state = 133;
778
+ this.match(OpraFilterParser.T__22);
779
+ this.state = 134;
780
+ _la = this._input.LA(1);
781
+ if (!(_la === OpraFilterParser.IDENTIFIER || _la === OpraFilterParser.STRING)) {
782
+ this._errHandler.recoverInline(this);
783
+ }
784
+ else {
785
+ if (this._input.LA(1) === Token_1.Token.EOF) {
786
+ this.matchedEOF = true;
787
+ }
788
+ this._errHandler.reportMatch(this);
789
+ this.consume();
790
+ }
791
+ }
792
+ }
793
+ catch (re) {
794
+ if (re instanceof RecognitionException_1.RecognitionException) {
795
+ _localctx.exception = re;
796
+ this._errHandler.reportError(this, re);
797
+ this._errHandler.recover(this, re);
798
+ }
799
+ else {
800
+ throw re;
801
+ }
802
+ }
803
+ finally {
804
+ this.exitRule();
805
+ }
806
+ return _localctx;
807
+ }
808
+ // @RuleVersion(0)
809
+ identifier() {
810
+ let _localctx = new IdentifierContext(this._ctx, this.state);
811
+ this.enterRule(_localctx, 26, OpraFilterParser.RULE_identifier);
812
+ try {
813
+ this.enterOuterAlt(_localctx, 1);
814
+ {
815
+ this.state = 136;
816
+ this.match(OpraFilterParser.IDENTIFIER);
817
+ }
818
+ }
819
+ catch (re) {
820
+ if (re instanceof RecognitionException_1.RecognitionException) {
821
+ _localctx.exception = re;
822
+ this._errHandler.reportError(this, re);
823
+ this._errHandler.recover(this, re);
824
+ }
825
+ else {
826
+ throw re;
827
+ }
828
+ }
829
+ finally {
830
+ this.exitRule();
831
+ }
832
+ return _localctx;
833
+ }
834
+ // @RuleVersion(0)
835
+ literal() {
836
+ let _localctx = new LiteralContext(this._ctx, this.state);
837
+ this.enterRule(_localctx, 28, OpraFilterParser.RULE_literal);
838
+ try {
839
+ this.state = 146;
840
+ this._errHandler.sync(this);
841
+ switch (this._input.LA(1)) {
842
+ case OpraFilterParser.NUMBER:
843
+ _localctx = new NumberLiteralContext(_localctx);
844
+ this.enterOuterAlt(_localctx, 1);
845
+ {
846
+ this.state = 138;
847
+ this.match(OpraFilterParser.NUMBER);
848
+ }
849
+ break;
850
+ case OpraFilterParser.T__44:
851
+ case OpraFilterParser.T__45:
852
+ _localctx = new InfinityLiteralContext(_localctx);
853
+ this.enterOuterAlt(_localctx, 2);
854
+ {
855
+ this.state = 139;
856
+ this.infinity();
857
+ }
858
+ break;
859
+ case OpraFilterParser.T__41:
860
+ case OpraFilterParser.T__42:
861
+ _localctx = new BooleanLiteralContext(_localctx);
862
+ this.enterOuterAlt(_localctx, 3);
863
+ {
864
+ this.state = 140;
865
+ this.boolean();
866
+ }
867
+ break;
868
+ case OpraFilterParser.T__43:
869
+ _localctx = new NullLiteralContext(_localctx);
870
+ this.enterOuterAlt(_localctx, 4);
871
+ {
872
+ this.state = 141;
873
+ this.null();
874
+ }
875
+ break;
876
+ case OpraFilterParser.DATE:
877
+ _localctx = new DateLiteralContext(_localctx);
878
+ this.enterOuterAlt(_localctx, 5);
879
+ {
880
+ this.state = 142;
881
+ this.match(OpraFilterParser.DATE);
882
+ }
883
+ break;
884
+ case OpraFilterParser.DATETIME:
885
+ _localctx = new DateTimeLiteralContext(_localctx);
886
+ this.enterOuterAlt(_localctx, 6);
887
+ {
888
+ this.state = 143;
889
+ this.match(OpraFilterParser.DATETIME);
890
+ }
891
+ break;
892
+ case OpraFilterParser.TIME:
893
+ _localctx = new TimeLiteralContext(_localctx);
894
+ this.enterOuterAlt(_localctx, 7);
895
+ {
896
+ this.state = 144;
897
+ this.match(OpraFilterParser.TIME);
898
+ }
899
+ break;
900
+ case OpraFilterParser.STRING:
901
+ _localctx = new StringLiteralContext(_localctx);
902
+ this.enterOuterAlt(_localctx, 8);
903
+ {
904
+ this.state = 145;
905
+ this.match(OpraFilterParser.STRING);
906
+ }
907
+ break;
908
+ default:
909
+ throw new NoViableAltException_1.NoViableAltException(this);
910
+ }
911
+ }
912
+ catch (re) {
913
+ if (re instanceof RecognitionException_1.RecognitionException) {
914
+ _localctx.exception = re;
915
+ this._errHandler.reportError(this, re);
916
+ this._errHandler.recover(this, re);
917
+ }
918
+ else {
919
+ throw re;
920
+ }
921
+ }
922
+ finally {
923
+ this.exitRule();
924
+ }
925
+ return _localctx;
926
+ }
927
+ // @RuleVersion(0)
928
+ compOp() {
929
+ let _localctx = new CompOpContext(this._ctx, this.state);
930
+ this.enterRule(_localctx, 30, OpraFilterParser.RULE_compOp);
931
+ let _la;
932
+ try {
933
+ this.enterOuterAlt(_localctx, 1);
934
+ {
935
+ this.state = 148;
936
+ _la = this._input.LA(1);
937
+ if (!(((((_la - 24)) & ~0x1F) === 0 && ((1 << (_la - 24)) & ((1 << (OpraFilterParser.T__23 - 24)) | (1 << (OpraFilterParser.T__24 - 24)) | (1 << (OpraFilterParser.T__25 - 24)) | (1 << (OpraFilterParser.T__26 - 24)) | (1 << (OpraFilterParser.T__27 - 24)) | (1 << (OpraFilterParser.T__28 - 24)) | (1 << (OpraFilterParser.T__29 - 24)) | (1 << (OpraFilterParser.T__30 - 24)) | (1 << (OpraFilterParser.T__31 - 24)) | (1 << (OpraFilterParser.T__32 - 24)) | (1 << (OpraFilterParser.T__33 - 24)) | (1 << (OpraFilterParser.T__34 - 24)))) !== 0))) {
938
+ this._errHandler.recoverInline(this);
939
+ }
940
+ else {
941
+ if (this._input.LA(1) === Token_1.Token.EOF) {
942
+ this.matchedEOF = true;
943
+ }
944
+ this._errHandler.reportMatch(this);
945
+ this.consume();
946
+ }
947
+ }
948
+ }
949
+ catch (re) {
950
+ if (re instanceof RecognitionException_1.RecognitionException) {
951
+ _localctx.exception = re;
952
+ this._errHandler.reportError(this, re);
953
+ this._errHandler.recover(this, re);
954
+ }
955
+ else {
956
+ throw re;
957
+ }
958
+ }
959
+ finally {
960
+ this.exitRule();
961
+ }
962
+ return _localctx;
963
+ }
964
+ // @RuleVersion(0)
965
+ arthOp() {
966
+ let _localctx = new ArthOpContext(this._ctx, this.state);
967
+ this.enterRule(_localctx, 32, OpraFilterParser.RULE_arthOp);
968
+ let _la;
969
+ try {
970
+ this.enterOuterAlt(_localctx, 1);
971
+ {
972
+ this.state = 150;
973
+ _la = this._input.LA(1);
974
+ if (!(((((_la - 36)) & ~0x1F) === 0 && ((1 << (_la - 36)) & ((1 << (OpraFilterParser.T__35 - 36)) | (1 << (OpraFilterParser.T__36 - 36)) | (1 << (OpraFilterParser.T__37 - 36)) | (1 << (OpraFilterParser.T__38 - 36)))) !== 0))) {
975
+ this._errHandler.recoverInline(this);
976
+ }
977
+ else {
978
+ if (this._input.LA(1) === Token_1.Token.EOF) {
979
+ this.matchedEOF = true;
980
+ }
981
+ this._errHandler.reportMatch(this);
982
+ this.consume();
983
+ }
984
+ }
985
+ }
986
+ catch (re) {
987
+ if (re instanceof RecognitionException_1.RecognitionException) {
988
+ _localctx.exception = re;
989
+ this._errHandler.reportError(this, re);
990
+ this._errHandler.recover(this, re);
991
+ }
992
+ else {
993
+ throw re;
994
+ }
995
+ }
996
+ finally {
997
+ this.exitRule();
998
+ }
999
+ return _localctx;
1000
+ }
1001
+ // @RuleVersion(0)
1002
+ polarOp() {
1003
+ let _localctx = new PolarOpContext(this._ctx, this.state);
1004
+ this.enterRule(_localctx, 34, OpraFilterParser.RULE_polarOp);
1005
+ let _la;
1006
+ try {
1007
+ this.enterOuterAlt(_localctx, 1);
1008
+ {
1009
+ this.state = 152;
1010
+ _la = this._input.LA(1);
1011
+ if (!(_la === OpraFilterParser.T__35 || _la === OpraFilterParser.T__36)) {
1012
+ this._errHandler.recoverInline(this);
1013
+ }
1014
+ else {
1015
+ if (this._input.LA(1) === Token_1.Token.EOF) {
1016
+ this.matchedEOF = true;
1017
+ }
1018
+ this._errHandler.reportMatch(this);
1019
+ this.consume();
1020
+ }
1021
+ }
1022
+ }
1023
+ catch (re) {
1024
+ if (re instanceof RecognitionException_1.RecognitionException) {
1025
+ _localctx.exception = re;
1026
+ this._errHandler.reportError(this, re);
1027
+ this._errHandler.recover(this, re);
1028
+ }
1029
+ else {
1030
+ throw re;
1031
+ }
1032
+ }
1033
+ finally {
1034
+ this.exitRule();
1035
+ }
1036
+ return _localctx;
1037
+ }
1038
+ // @RuleVersion(0)
1039
+ logOp() {
1040
+ let _localctx = new LogOpContext(this._ctx, this.state);
1041
+ this.enterRule(_localctx, 36, OpraFilterParser.RULE_logOp);
1042
+ let _la;
1043
+ try {
1044
+ this.enterOuterAlt(_localctx, 1);
1045
+ {
1046
+ this.state = 154;
1047
+ _la = this._input.LA(1);
1048
+ if (!(_la === OpraFilterParser.T__39 || _la === OpraFilterParser.T__40)) {
1049
+ this._errHandler.recoverInline(this);
1050
+ }
1051
+ else {
1052
+ if (this._input.LA(1) === Token_1.Token.EOF) {
1053
+ this.matchedEOF = true;
1054
+ }
1055
+ this._errHandler.reportMatch(this);
1056
+ this.consume();
1057
+ }
1058
+ }
1059
+ }
1060
+ catch (re) {
1061
+ if (re instanceof RecognitionException_1.RecognitionException) {
1062
+ _localctx.exception = re;
1063
+ this._errHandler.reportError(this, re);
1064
+ this._errHandler.recover(this, re);
1065
+ }
1066
+ else {
1067
+ throw re;
1068
+ }
1069
+ }
1070
+ finally {
1071
+ this.exitRule();
1072
+ }
1073
+ return _localctx;
1074
+ }
1075
+ // @RuleVersion(0)
1076
+ boolean() {
1077
+ let _localctx = new BooleanContext(this._ctx, this.state);
1078
+ this.enterRule(_localctx, 38, OpraFilterParser.RULE_boolean);
1079
+ let _la;
1080
+ try {
1081
+ this.enterOuterAlt(_localctx, 1);
1082
+ {
1083
+ this.state = 156;
1084
+ _la = this._input.LA(1);
1085
+ if (!(_la === OpraFilterParser.T__41 || _la === OpraFilterParser.T__42)) {
1086
+ this._errHandler.recoverInline(this);
1087
+ }
1088
+ else {
1089
+ if (this._input.LA(1) === Token_1.Token.EOF) {
1090
+ this.matchedEOF = true;
1091
+ }
1092
+ this._errHandler.reportMatch(this);
1093
+ this.consume();
1094
+ }
1095
+ }
1096
+ }
1097
+ catch (re) {
1098
+ if (re instanceof RecognitionException_1.RecognitionException) {
1099
+ _localctx.exception = re;
1100
+ this._errHandler.reportError(this, re);
1101
+ this._errHandler.recover(this, re);
1102
+ }
1103
+ else {
1104
+ throw re;
1105
+ }
1106
+ }
1107
+ finally {
1108
+ this.exitRule();
1109
+ }
1110
+ return _localctx;
1111
+ }
1112
+ // @RuleVersion(0)
1113
+ null() {
1114
+ let _localctx = new NullContext(this._ctx, this.state);
1115
+ this.enterRule(_localctx, 40, OpraFilterParser.RULE_null);
1116
+ try {
1117
+ this.enterOuterAlt(_localctx, 1);
1118
+ {
1119
+ this.state = 158;
1120
+ this.match(OpraFilterParser.T__43);
1121
+ }
1122
+ }
1123
+ catch (re) {
1124
+ if (re instanceof RecognitionException_1.RecognitionException) {
1125
+ _localctx.exception = re;
1126
+ this._errHandler.reportError(this, re);
1127
+ this._errHandler.recover(this, re);
1128
+ }
1129
+ else {
1130
+ throw re;
1131
+ }
1132
+ }
1133
+ finally {
1134
+ this.exitRule();
1135
+ }
1136
+ return _localctx;
1137
+ }
1138
+ // @RuleVersion(0)
1139
+ infinity() {
1140
+ let _localctx = new InfinityContext(this._ctx, this.state);
1141
+ this.enterRule(_localctx, 42, OpraFilterParser.RULE_infinity);
1142
+ let _la;
1143
+ try {
1144
+ this.enterOuterAlt(_localctx, 1);
1145
+ {
1146
+ this.state = 160;
1147
+ _la = this._input.LA(1);
1148
+ if (!(_la === OpraFilterParser.T__44 || _la === OpraFilterParser.T__45)) {
1149
+ this._errHandler.recoverInline(this);
1150
+ }
1151
+ else {
1152
+ if (this._input.LA(1) === Token_1.Token.EOF) {
1153
+ this.matchedEOF = true;
1154
+ }
1155
+ this._errHandler.reportMatch(this);
1156
+ this.consume();
1157
+ }
1158
+ }
1159
+ }
1160
+ catch (re) {
1161
+ if (re instanceof RecognitionException_1.RecognitionException) {
1162
+ _localctx.exception = re;
1163
+ this._errHandler.reportError(this, re);
1164
+ this._errHandler.recover(this, re);
1165
+ }
1166
+ else {
1167
+ throw re;
1168
+ }
1169
+ }
1170
+ finally {
1171
+ this.exitRule();
1172
+ }
1173
+ return _localctx;
1174
+ }
1175
+ sempred(_localctx, ruleIndex, predIndex) {
1176
+ switch (ruleIndex) {
1177
+ case 1:
1178
+ return this.expression_sempred(_localctx, predIndex);
1179
+ }
1180
+ return true;
1181
+ }
1182
+ expression_sempred(_localctx, predIndex) {
1183
+ switch (predIndex) {
1184
+ case 0:
1185
+ return this.precpred(this._ctx, 5);
1186
+ case 1:
1187
+ return this.precpred(this._ctx, 4);
1188
+ case 2:
1189
+ return this.precpred(this._ctx, 3);
1190
+ }
1191
+ return true;
1192
+ }
1193
+ static _serializedATN = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x03:\xA5\x04\x02" +
1194
+ "\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07" +
1195
+ "\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r\t\r\x04" +
1196
+ "\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t\x12\x04" +
1197
+ "\x13\t\x13\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17\t\x17\x03" +
1198
+ "\x02\x03\x02\x03\x02\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03" +
1199
+ "\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x07\x03?\n\x03\f" +
1200
+ "\x03\x0E\x03B\v\x03\x03\x03\x03\x03\x05\x03F\n\x03\x03\x03\x03\x03\x03" +
1201
+ "\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03" +
1202
+ "\x03\x07\x03T\n\x03\f\x03\x0E\x03W\v\x03\x03\x04\x03\x04\x03\x04\x05\x04" +
1203
+ "\\\n\x04\x03\x05\x03\x05\x03\x06\x03\x06\x03\x07\x03\x07\x05\x07d\n\x07" +
1204
+ "\x03\b\x03\b\x03\b\x05\bi\n\b\x03\b\x03\b\x03\t\x03\t\x03\t\x07\tp\n\t" +
1205
+ "\f\t\x0E\ts\v\t\x03\n\x03\n\x03\n\x05\nx\n\n\x03\v\x03\v\x03\f\x03\f\x03" +
1206
+ "\r\x03\r\x03\r\x07\r\x81\n\r\f\r\x0E\r\x84\v\r\x03\r\x03\r\x03\x0E\x03" +
1207
+ "\x0E\x03\x0E\x03\x0F\x03\x0F\x03\x10\x03\x10\x03\x10\x03\x10\x03\x10\x03" +
1208
+ "\x10\x03\x10\x03\x10\x05\x10\x95\n\x10\x03\x11\x03\x11\x03\x12\x03\x12" +
1209
+ "\x03\x13\x03\x13\x03\x14\x03\x14\x03\x15\x03\x15\x03\x16\x03\x16\x03\x17" +
1210
+ "\x03\x17\x03\x17\x02\x02\x03\x04\x18\x02\x02\x04\x02\x06\x02\b\x02\n\x02" +
1211
+ "\f\x02\x0E\x02\x10\x02\x12\x02\x14\x02\x16\x02\x18\x02\x1A\x02\x1C\x02" +
1212
+ "\x1E\x02 \x02\"\x02$\x02&\x02(\x02*\x02,\x02\x02\v\x03\x02\b\x0F\x03\x02" +
1213
+ "\x10\x17\x03\x0245\x03\x02\x1A%\x03\x02&)\x03\x02&\'\x03\x02*+\x03\x02" +
1214
+ ",-\x03\x02/0\x02\xA4\x02.\x03\x02\x02\x02\x04E\x03\x02\x02\x02\x06[\x03" +
1215
+ "\x02\x02\x02\b]\x03\x02\x02\x02\n_\x03\x02\x02\x02\fc\x03\x02\x02\x02" +
1216
+ "\x0Ee\x03\x02\x02\x02\x10l\x03\x02\x02\x02\x12w\x03\x02\x02\x02\x14y\x03" +
1217
+ "\x02\x02\x02\x16{\x03\x02\x02\x02\x18\x82\x03\x02\x02\x02\x1A\x87\x03" +
1218
+ "\x02\x02\x02\x1C\x8A\x03\x02\x02\x02\x1E\x94\x03\x02\x02\x02 \x96\x03" +
1219
+ "\x02\x02\x02\"\x98\x03\x02\x02\x02$\x9A\x03\x02\x02\x02&\x9C\x03\x02\x02" +
1220
+ "\x02(\x9E\x03\x02\x02\x02*\xA0\x03\x02\x02\x02,\xA2\x03\x02\x02\x02./" +
1221
+ "\x05\x04\x03\x02/0\x07\x02\x02\x030\x03\x03\x02\x02\x0212\b\x03\x01\x02" +
1222
+ "2F\x05\x06\x04\x0234\x05$\x13\x0245\x05\x04\x03\b5F\x03\x02\x02\x0267" +
1223
+ "\x07\x03\x02\x0278\x05\x04\x03\x0289\x07\x04\x02\x029F\x03\x02\x02\x02" +
1224
+ ":;\x07\x05\x02\x02;@\x05\x04\x03\x02<=\x07\x06\x02\x02=?\x05\x04\x03\x02" +
1225
+ "><\x03\x02\x02\x02?B\x03\x02\x02\x02@>\x03\x02\x02\x02@A\x03\x02\x02\x02" +
1226
+ "AC\x03\x02\x02\x02B@\x03\x02\x02\x02CD\x07\x07\x02\x02DF\x03\x02\x02\x02" +
1227
+ "E1\x03\x02\x02\x02E3\x03\x02\x02\x02E6\x03\x02\x02\x02E:\x03\x02\x02\x02" +
1228
+ "FU\x03\x02\x02\x02GH\f\x07\x02\x02HI\x05\"\x12\x02IJ\x05\x04\x03\bJT\x03" +
1229
+ "\x02\x02\x02KL\f\x06\x02\x02LM\x05 \x11\x02MN\x05\x04\x03\x07NT\x03\x02" +
1230
+ "\x02\x02OP\f\x05\x02\x02PQ\x05&\x14\x02QR\x05\x04\x03\x06RT\x03\x02\x02" +
1231
+ "\x02SG\x03\x02\x02\x02SK\x03\x02\x02\x02SO\x03\x02\x02\x02TW\x03\x02\x02" +
1232
+ "\x02US\x03\x02\x02\x02UV\x03\x02\x02\x02V\x05\x03\x02\x02\x02WU\x03\x02" +
1233
+ "\x02\x02X\\\x05\x1E\x10\x02Y\\\x05\x18\r\x02Z\\\x05\x1A\x0E\x02[X\x03" +
1234
+ "\x02\x02\x02[Y\x03\x02\x02\x02[Z\x03\x02\x02\x02\\\x07\x03\x02\x02\x02" +
1235
+ "]^\x05\x0E\b\x02^\t\x03\x02\x02\x02_`\x05\x1C\x0F\x02`\v\x03\x02\x02\x02" +
1236
+ "ad\x05\x1C\x0F\x02bd\x077\x02\x02ca\x03\x02\x02\x02cb\x03\x02\x02\x02" +
1237
+ "d\r\x03\x02\x02\x02ef\x05\x1C\x0F\x02fh\x07\x03\x02\x02gi\x05\x10\t\x02" +
1238
+ "hg\x03\x02\x02\x02hi\x03\x02\x02\x02ij\x03\x02\x02\x02jk\x07\x04\x02\x02" +
1239
+ "k\x0F\x03\x02\x02\x02lq\x05\x04\x03\x02mn\x07\x06\x02\x02np\x05\x04\x03" +
1240
+ "\x02om\x03\x02\x02\x02ps\x03\x02\x02\x02qo\x03\x02\x02\x02qr\x03\x02\x02" +
1241
+ "\x02r\x11\x03\x02\x02\x02sq\x03\x02\x02\x02tx\x05\x14\v\x02ux\x05\x16" +
1242
+ "\f\x02vx\x075\x02\x02wt\x03\x02\x02\x02wu\x03\x02\x02\x02wv\x03\x02\x02" +
1243
+ "\x02x\x13\x03\x02\x02\x02yz\t\x02\x02\x02z\x15\x03\x02\x02\x02{|\t\x03" +
1244
+ "\x02\x02|\x17\x03\x02\x02\x02}~\x05\x1C\x0F\x02~\x7F\x07\x18\x02\x02\x7F" +
1245
+ "\x81\x03\x02\x02\x02\x80}\x03\x02\x02\x02\x81\x84\x03\x02\x02\x02\x82" +
1246
+ "\x80\x03\x02\x02\x02\x82\x83\x03\x02\x02\x02\x83\x85\x03\x02\x02\x02\x84" +
1247
+ "\x82\x03\x02\x02\x02\x85\x86\x05\x1C\x0F\x02\x86\x19\x03\x02\x02\x02\x87" +
1248
+ "\x88\x07\x19\x02\x02\x88\x89\t\x04\x02\x02\x89\x1B\x03\x02\x02\x02\x8A" +
1249
+ "\x8B\x074\x02\x02\x8B\x1D\x03\x02\x02\x02\x8C\x95\x076\x02\x02\x8D\x95" +
1250
+ "\x05,\x17\x02\x8E\x95\x05(\x15\x02\x8F\x95\x05*\x16\x02\x90\x95\x071\x02" +
1251
+ "\x02\x91\x95\x072\x02\x02\x92\x95\x073\x02\x02\x93\x95\x075\x02\x02\x94" +
1252
+ "\x8C\x03\x02\x02\x02\x94\x8D\x03\x02\x02\x02\x94\x8E\x03\x02\x02\x02\x94" +
1253
+ "\x8F\x03\x02\x02\x02\x94\x90\x03\x02\x02\x02\x94\x91\x03\x02\x02\x02\x94" +
1254
+ "\x92\x03\x02\x02\x02\x94\x93\x03\x02\x02\x02\x95\x1F\x03\x02\x02\x02\x96" +
1255
+ "\x97\t\x05\x02\x02\x97!\x03\x02\x02\x02\x98\x99\t\x06\x02\x02\x99#\x03" +
1256
+ "\x02\x02\x02\x9A\x9B\t\x07\x02\x02\x9B%\x03\x02\x02\x02\x9C\x9D\t\b\x02" +
1257
+ "\x02\x9D\'\x03\x02\x02\x02\x9E\x9F\t\t\x02\x02\x9F)\x03\x02\x02\x02\xA0" +
1258
+ "\xA1\x07.\x02\x02\xA1+\x03\x02\x02\x02\xA2\xA3\t\n\x02\x02\xA3-\x03\x02" +
1259
+ "\x02\x02\r@ESU[chqw\x82\x94";
1260
+ static __ATN;
1261
+ static get _ATN() {
1262
+ if (!OpraFilterParser.__ATN) {
1263
+ OpraFilterParser.__ATN = new ATNDeserializer_1.ATNDeserializer().deserialize(Utils.toCharArray(OpraFilterParser._serializedATN));
1264
+ }
1265
+ return OpraFilterParser.__ATN;
1266
+ }
1267
+ }
1268
+ exports.OpraFilterParser = OpraFilterParser;
1269
+ class RootContext extends ParserRuleContext_1.ParserRuleContext {
1270
+ expression() {
1271
+ return this.getRuleContext(0, ExpressionContext);
1272
+ }
1273
+ EOF() { return this.getToken(OpraFilterParser.EOF, 0); }
1274
+ constructor(parent, invokingState) {
1275
+ super(parent, invokingState);
1276
+ }
1277
+ // @Override
1278
+ get ruleIndex() { return OpraFilterParser.RULE_root; }
1279
+ // @Override
1280
+ accept(visitor) {
1281
+ if (visitor.visitRoot) {
1282
+ return visitor.visitRoot(this);
1283
+ }
1284
+ else {
1285
+ return visitor.visitChildren(this);
1286
+ }
1287
+ }
1288
+ }
1289
+ exports.RootContext = RootContext;
1290
+ class ExpressionContext extends ParserRuleContext_1.ParserRuleContext {
1291
+ constructor(parent, invokingState) {
1292
+ super(parent, invokingState);
1293
+ }
1294
+ // @Override
1295
+ get ruleIndex() { return OpraFilterParser.RULE_expression; }
1296
+ copyFrom(ctx) {
1297
+ super.copyFrom(ctx);
1298
+ }
1299
+ }
1300
+ exports.ExpressionContext = ExpressionContext;
1301
+ class TermExpressionContext extends ExpressionContext {
1302
+ term() {
1303
+ return this.getRuleContext(0, TermContext);
1304
+ }
1305
+ constructor(ctx) {
1306
+ super(ctx.parent, ctx.invokingState);
1307
+ this.copyFrom(ctx);
1308
+ }
1309
+ // @Override
1310
+ accept(visitor) {
1311
+ if (visitor.visitTermExpression) {
1312
+ return visitor.visitTermExpression(this);
1313
+ }
1314
+ else {
1315
+ return visitor.visitChildren(this);
1316
+ }
1317
+ }
1318
+ }
1319
+ exports.TermExpressionContext = TermExpressionContext;
1320
+ class PolarityExpressionContext extends ExpressionContext {
1321
+ polarOp() {
1322
+ return this.getRuleContext(0, PolarOpContext);
1323
+ }
1324
+ expression() {
1325
+ return this.getRuleContext(0, ExpressionContext);
1326
+ }
1327
+ constructor(ctx) {
1328
+ super(ctx.parent, ctx.invokingState);
1329
+ this.copyFrom(ctx);
1330
+ }
1331
+ // @Override
1332
+ accept(visitor) {
1333
+ if (visitor.visitPolarityExpression) {
1334
+ return visitor.visitPolarityExpression(this);
1335
+ }
1336
+ else {
1337
+ return visitor.visitChildren(this);
1338
+ }
1339
+ }
1340
+ }
1341
+ exports.PolarityExpressionContext = PolarityExpressionContext;
1342
+ class ArithmeticExpressionContext extends ExpressionContext {
1343
+ expression(i) {
1344
+ if (i === undefined) {
1345
+ return this.getRuleContexts(ExpressionContext);
1346
+ }
1347
+ else {
1348
+ return this.getRuleContext(i, ExpressionContext);
1349
+ }
1350
+ }
1351
+ arthOp() {
1352
+ return this.getRuleContext(0, ArthOpContext);
1353
+ }
1354
+ constructor(ctx) {
1355
+ super(ctx.parent, ctx.invokingState);
1356
+ this.copyFrom(ctx);
1357
+ }
1358
+ // @Override
1359
+ accept(visitor) {
1360
+ if (visitor.visitArithmeticExpression) {
1361
+ return visitor.visitArithmeticExpression(this);
1362
+ }
1363
+ else {
1364
+ return visitor.visitChildren(this);
1365
+ }
1366
+ }
1367
+ }
1368
+ exports.ArithmeticExpressionContext = ArithmeticExpressionContext;
1369
+ class ComparisonExpressionContext extends ExpressionContext {
1370
+ expression(i) {
1371
+ if (i === undefined) {
1372
+ return this.getRuleContexts(ExpressionContext);
1373
+ }
1374
+ else {
1375
+ return this.getRuleContext(i, ExpressionContext);
1376
+ }
1377
+ }
1378
+ compOp() {
1379
+ return this.getRuleContext(0, CompOpContext);
1380
+ }
1381
+ constructor(ctx) {
1382
+ super(ctx.parent, ctx.invokingState);
1383
+ this.copyFrom(ctx);
1384
+ }
1385
+ // @Override
1386
+ accept(visitor) {
1387
+ if (visitor.visitComparisonExpression) {
1388
+ return visitor.visitComparisonExpression(this);
1389
+ }
1390
+ else {
1391
+ return visitor.visitChildren(this);
1392
+ }
1393
+ }
1394
+ }
1395
+ exports.ComparisonExpressionContext = ComparisonExpressionContext;
1396
+ class LogicalExpressionContext extends ExpressionContext {
1397
+ expression(i) {
1398
+ if (i === undefined) {
1399
+ return this.getRuleContexts(ExpressionContext);
1400
+ }
1401
+ else {
1402
+ return this.getRuleContext(i, ExpressionContext);
1403
+ }
1404
+ }
1405
+ logOp() {
1406
+ return this.getRuleContext(0, LogOpContext);
1407
+ }
1408
+ constructor(ctx) {
1409
+ super(ctx.parent, ctx.invokingState);
1410
+ this.copyFrom(ctx);
1411
+ }
1412
+ // @Override
1413
+ accept(visitor) {
1414
+ if (visitor.visitLogicalExpression) {
1415
+ return visitor.visitLogicalExpression(this);
1416
+ }
1417
+ else {
1418
+ return visitor.visitChildren(this);
1419
+ }
1420
+ }
1421
+ }
1422
+ exports.LogicalExpressionContext = LogicalExpressionContext;
1423
+ class ParenthesizedExpressionContext extends ExpressionContext {
1424
+ expression() {
1425
+ return this.getRuleContext(0, ExpressionContext);
1426
+ }
1427
+ constructor(ctx) {
1428
+ super(ctx.parent, ctx.invokingState);
1429
+ this.copyFrom(ctx);
1430
+ }
1431
+ // @Override
1432
+ accept(visitor) {
1433
+ if (visitor.visitParenthesizedExpression) {
1434
+ return visitor.visitParenthesizedExpression(this);
1435
+ }
1436
+ else {
1437
+ return visitor.visitChildren(this);
1438
+ }
1439
+ }
1440
+ }
1441
+ exports.ParenthesizedExpressionContext = ParenthesizedExpressionContext;
1442
+ class ArrayExpressionContext extends ExpressionContext {
1443
+ expression(i) {
1444
+ if (i === undefined) {
1445
+ return this.getRuleContexts(ExpressionContext);
1446
+ }
1447
+ else {
1448
+ return this.getRuleContext(i, ExpressionContext);
1449
+ }
1450
+ }
1451
+ constructor(ctx) {
1452
+ super(ctx.parent, ctx.invokingState);
1453
+ this.copyFrom(ctx);
1454
+ }
1455
+ // @Override
1456
+ accept(visitor) {
1457
+ if (visitor.visitArrayExpression) {
1458
+ return visitor.visitArrayExpression(this);
1459
+ }
1460
+ else {
1461
+ return visitor.visitChildren(this);
1462
+ }
1463
+ }
1464
+ }
1465
+ exports.ArrayExpressionContext = ArrayExpressionContext;
1466
+ class TermContext extends ParserRuleContext_1.ParserRuleContext {
1467
+ constructor(parent, invokingState) {
1468
+ super(parent, invokingState);
1469
+ }
1470
+ // @Override
1471
+ get ruleIndex() { return OpraFilterParser.RULE_term; }
1472
+ copyFrom(ctx) {
1473
+ super.copyFrom(ctx);
1474
+ }
1475
+ }
1476
+ exports.TermContext = TermContext;
1477
+ class LiteralTermContext extends TermContext {
1478
+ literal() {
1479
+ return this.getRuleContext(0, LiteralContext);
1480
+ }
1481
+ constructor(ctx) {
1482
+ super(ctx.parent, ctx.invokingState);
1483
+ this.copyFrom(ctx);
1484
+ }
1485
+ // @Override
1486
+ accept(visitor) {
1487
+ if (visitor.visitLiteralTerm) {
1488
+ return visitor.visitLiteralTerm(this);
1489
+ }
1490
+ else {
1491
+ return visitor.visitChildren(this);
1492
+ }
1493
+ }
1494
+ }
1495
+ exports.LiteralTermContext = LiteralTermContext;
1496
+ class QualifiedIdentifierTermContext extends TermContext {
1497
+ qualifiedIdentifier() {
1498
+ return this.getRuleContext(0, QualifiedIdentifierContext);
1499
+ }
1500
+ constructor(ctx) {
1501
+ super(ctx.parent, ctx.invokingState);
1502
+ this.copyFrom(ctx);
1503
+ }
1504
+ // @Override
1505
+ accept(visitor) {
1506
+ if (visitor.visitQualifiedIdentifierTerm) {
1507
+ return visitor.visitQualifiedIdentifierTerm(this);
1508
+ }
1509
+ else {
1510
+ return visitor.visitChildren(this);
1511
+ }
1512
+ }
1513
+ }
1514
+ exports.QualifiedIdentifierTermContext = QualifiedIdentifierTermContext;
1515
+ class ExternalConstantTermContext extends TermContext {
1516
+ externalConstant() {
1517
+ return this.getRuleContext(0, ExternalConstantContext);
1518
+ }
1519
+ constructor(ctx) {
1520
+ super(ctx.parent, ctx.invokingState);
1521
+ this.copyFrom(ctx);
1522
+ }
1523
+ // @Override
1524
+ accept(visitor) {
1525
+ if (visitor.visitExternalConstantTerm) {
1526
+ return visitor.visitExternalConstantTerm(this);
1527
+ }
1528
+ else {
1529
+ return visitor.visitChildren(this);
1530
+ }
1531
+ }
1532
+ }
1533
+ exports.ExternalConstantTermContext = ExternalConstantTermContext;
1534
+ class InvocableContext extends ParserRuleContext_1.ParserRuleContext {
1535
+ function() {
1536
+ return this.getRuleContext(0, FunctionContext);
1537
+ }
1538
+ constructor(parent, invokingState) {
1539
+ super(parent, invokingState);
1540
+ }
1541
+ // @Override
1542
+ get ruleIndex() { return OpraFilterParser.RULE_invocable; }
1543
+ // @Override
1544
+ accept(visitor) {
1545
+ if (visitor.visitInvocable) {
1546
+ return visitor.visitInvocable(this);
1547
+ }
1548
+ else {
1549
+ return visitor.visitChildren(this);
1550
+ }
1551
+ }
1552
+ }
1553
+ exports.InvocableContext = InvocableContext;
1554
+ class InvocationContext extends ParserRuleContext_1.ParserRuleContext {
1555
+ constructor(parent, invokingState) {
1556
+ super(parent, invokingState);
1557
+ }
1558
+ // @Override
1559
+ get ruleIndex() { return OpraFilterParser.RULE_invocation; }
1560
+ copyFrom(ctx) {
1561
+ super.copyFrom(ctx);
1562
+ }
1563
+ }
1564
+ exports.InvocationContext = InvocationContext;
1565
+ class MemberInvocationContext extends InvocationContext {
1566
+ identifier() {
1567
+ return this.getRuleContext(0, IdentifierContext);
1568
+ }
1569
+ constructor(ctx) {
1570
+ super(ctx.parent, ctx.invokingState);
1571
+ this.copyFrom(ctx);
1572
+ }
1573
+ // @Override
1574
+ accept(visitor) {
1575
+ if (visitor.visitMemberInvocation) {
1576
+ return visitor.visitMemberInvocation(this);
1577
+ }
1578
+ else {
1579
+ return visitor.visitChildren(this);
1580
+ }
1581
+ }
1582
+ }
1583
+ exports.MemberInvocationContext = MemberInvocationContext;
1584
+ class IndexerContext extends ParserRuleContext_1.ParserRuleContext {
1585
+ constructor(parent, invokingState) {
1586
+ super(parent, invokingState);
1587
+ }
1588
+ // @Override
1589
+ get ruleIndex() { return OpraFilterParser.RULE_indexer; }
1590
+ copyFrom(ctx) {
1591
+ super.copyFrom(ctx);
1592
+ }
1593
+ }
1594
+ exports.IndexerContext = IndexerContext;
1595
+ class MemberIndexContext extends IndexerContext {
1596
+ identifier() {
1597
+ return this.getRuleContext(0, IdentifierContext);
1598
+ }
1599
+ constructor(ctx) {
1600
+ super(ctx.parent, ctx.invokingState);
1601
+ this.copyFrom(ctx);
1602
+ }
1603
+ // @Override
1604
+ accept(visitor) {
1605
+ if (visitor.visitMemberIndex) {
1606
+ return visitor.visitMemberIndex(this);
1607
+ }
1608
+ else {
1609
+ return visitor.visitChildren(this);
1610
+ }
1611
+ }
1612
+ }
1613
+ exports.MemberIndexContext = MemberIndexContext;
1614
+ class NumberIndexContext extends IndexerContext {
1615
+ INTEGER() { return this.getToken(OpraFilterParser.INTEGER, 0); }
1616
+ constructor(ctx) {
1617
+ super(ctx.parent, ctx.invokingState);
1618
+ this.copyFrom(ctx);
1619
+ }
1620
+ // @Override
1621
+ accept(visitor) {
1622
+ if (visitor.visitNumberIndex) {
1623
+ return visitor.visitNumberIndex(this);
1624
+ }
1625
+ else {
1626
+ return visitor.visitChildren(this);
1627
+ }
1628
+ }
1629
+ }
1630
+ exports.NumberIndexContext = NumberIndexContext;
1631
+ class FunctionContext extends ParserRuleContext_1.ParserRuleContext {
1632
+ identifier() {
1633
+ return this.getRuleContext(0, IdentifierContext);
1634
+ }
1635
+ paramList() {
1636
+ return this.tryGetRuleContext(0, ParamListContext);
1637
+ }
1638
+ constructor(parent, invokingState) {
1639
+ super(parent, invokingState);
1640
+ }
1641
+ // @Override
1642
+ get ruleIndex() { return OpraFilterParser.RULE_function; }
1643
+ // @Override
1644
+ accept(visitor) {
1645
+ if (visitor.visitFunction) {
1646
+ return visitor.visitFunction(this);
1647
+ }
1648
+ else {
1649
+ return visitor.visitChildren(this);
1650
+ }
1651
+ }
1652
+ }
1653
+ exports.FunctionContext = FunctionContext;
1654
+ class ParamListContext extends ParserRuleContext_1.ParserRuleContext {
1655
+ expression(i) {
1656
+ if (i === undefined) {
1657
+ return this.getRuleContexts(ExpressionContext);
1658
+ }
1659
+ else {
1660
+ return this.getRuleContext(i, ExpressionContext);
1661
+ }
1662
+ }
1663
+ constructor(parent, invokingState) {
1664
+ super(parent, invokingState);
1665
+ }
1666
+ // @Override
1667
+ get ruleIndex() { return OpraFilterParser.RULE_paramList; }
1668
+ // @Override
1669
+ accept(visitor) {
1670
+ if (visitor.visitParamList) {
1671
+ return visitor.visitParamList(this);
1672
+ }
1673
+ else {
1674
+ return visitor.visitChildren(this);
1675
+ }
1676
+ }
1677
+ }
1678
+ exports.ParamListContext = ParamListContext;
1679
+ class UnitContext extends ParserRuleContext_1.ParserRuleContext {
1680
+ dateTimePrecision() {
1681
+ return this.tryGetRuleContext(0, DateTimePrecisionContext);
1682
+ }
1683
+ pluralDateTimePrecision() {
1684
+ return this.tryGetRuleContext(0, PluralDateTimePrecisionContext);
1685
+ }
1686
+ STRING() { return this.tryGetToken(OpraFilterParser.STRING, 0); }
1687
+ constructor(parent, invokingState) {
1688
+ super(parent, invokingState);
1689
+ }
1690
+ // @Override
1691
+ get ruleIndex() { return OpraFilterParser.RULE_unit; }
1692
+ // @Override
1693
+ accept(visitor) {
1694
+ if (visitor.visitUnit) {
1695
+ return visitor.visitUnit(this);
1696
+ }
1697
+ else {
1698
+ return visitor.visitChildren(this);
1699
+ }
1700
+ }
1701
+ }
1702
+ exports.UnitContext = UnitContext;
1703
+ class DateTimePrecisionContext extends ParserRuleContext_1.ParserRuleContext {
1704
+ constructor(parent, invokingState) {
1705
+ super(parent, invokingState);
1706
+ }
1707
+ // @Override
1708
+ get ruleIndex() { return OpraFilterParser.RULE_dateTimePrecision; }
1709
+ // @Override
1710
+ accept(visitor) {
1711
+ if (visitor.visitDateTimePrecision) {
1712
+ return visitor.visitDateTimePrecision(this);
1713
+ }
1714
+ else {
1715
+ return visitor.visitChildren(this);
1716
+ }
1717
+ }
1718
+ }
1719
+ exports.DateTimePrecisionContext = DateTimePrecisionContext;
1720
+ class PluralDateTimePrecisionContext extends ParserRuleContext_1.ParserRuleContext {
1721
+ constructor(parent, invokingState) {
1722
+ super(parent, invokingState);
1723
+ }
1724
+ // @Override
1725
+ get ruleIndex() { return OpraFilterParser.RULE_pluralDateTimePrecision; }
1726
+ // @Override
1727
+ accept(visitor) {
1728
+ if (visitor.visitPluralDateTimePrecision) {
1729
+ return visitor.visitPluralDateTimePrecision(this);
1730
+ }
1731
+ else {
1732
+ return visitor.visitChildren(this);
1733
+ }
1734
+ }
1735
+ }
1736
+ exports.PluralDateTimePrecisionContext = PluralDateTimePrecisionContext;
1737
+ class QualifiedIdentifierContext extends ParserRuleContext_1.ParserRuleContext {
1738
+ identifier(i) {
1739
+ if (i === undefined) {
1740
+ return this.getRuleContexts(IdentifierContext);
1741
+ }
1742
+ else {
1743
+ return this.getRuleContext(i, IdentifierContext);
1744
+ }
1745
+ }
1746
+ constructor(parent, invokingState) {
1747
+ super(parent, invokingState);
1748
+ }
1749
+ // @Override
1750
+ get ruleIndex() { return OpraFilterParser.RULE_qualifiedIdentifier; }
1751
+ // @Override
1752
+ accept(visitor) {
1753
+ if (visitor.visitQualifiedIdentifier) {
1754
+ return visitor.visitQualifiedIdentifier(this);
1755
+ }
1756
+ else {
1757
+ return visitor.visitChildren(this);
1758
+ }
1759
+ }
1760
+ }
1761
+ exports.QualifiedIdentifierContext = QualifiedIdentifierContext;
1762
+ class ExternalConstantContext extends ParserRuleContext_1.ParserRuleContext {
1763
+ IDENTIFIER() { return this.tryGetToken(OpraFilterParser.IDENTIFIER, 0); }
1764
+ STRING() { return this.tryGetToken(OpraFilterParser.STRING, 0); }
1765
+ constructor(parent, invokingState) {
1766
+ super(parent, invokingState);
1767
+ }
1768
+ // @Override
1769
+ get ruleIndex() { return OpraFilterParser.RULE_externalConstant; }
1770
+ // @Override
1771
+ accept(visitor) {
1772
+ if (visitor.visitExternalConstant) {
1773
+ return visitor.visitExternalConstant(this);
1774
+ }
1775
+ else {
1776
+ return visitor.visitChildren(this);
1777
+ }
1778
+ }
1779
+ }
1780
+ exports.ExternalConstantContext = ExternalConstantContext;
1781
+ class IdentifierContext extends ParserRuleContext_1.ParserRuleContext {
1782
+ IDENTIFIER() { return this.getToken(OpraFilterParser.IDENTIFIER, 0); }
1783
+ constructor(parent, invokingState) {
1784
+ super(parent, invokingState);
1785
+ }
1786
+ // @Override
1787
+ get ruleIndex() { return OpraFilterParser.RULE_identifier; }
1788
+ // @Override
1789
+ accept(visitor) {
1790
+ if (visitor.visitIdentifier) {
1791
+ return visitor.visitIdentifier(this);
1792
+ }
1793
+ else {
1794
+ return visitor.visitChildren(this);
1795
+ }
1796
+ }
1797
+ }
1798
+ exports.IdentifierContext = IdentifierContext;
1799
+ class LiteralContext extends ParserRuleContext_1.ParserRuleContext {
1800
+ constructor(parent, invokingState) {
1801
+ super(parent, invokingState);
1802
+ }
1803
+ // @Override
1804
+ get ruleIndex() { return OpraFilterParser.RULE_literal; }
1805
+ copyFrom(ctx) {
1806
+ super.copyFrom(ctx);
1807
+ }
1808
+ }
1809
+ exports.LiteralContext = LiteralContext;
1810
+ class NumberLiteralContext extends LiteralContext {
1811
+ NUMBER() { return this.getToken(OpraFilterParser.NUMBER, 0); }
1812
+ constructor(ctx) {
1813
+ super(ctx.parent, ctx.invokingState);
1814
+ this.copyFrom(ctx);
1815
+ }
1816
+ // @Override
1817
+ accept(visitor) {
1818
+ if (visitor.visitNumberLiteral) {
1819
+ return visitor.visitNumberLiteral(this);
1820
+ }
1821
+ else {
1822
+ return visitor.visitChildren(this);
1823
+ }
1824
+ }
1825
+ }
1826
+ exports.NumberLiteralContext = NumberLiteralContext;
1827
+ class InfinityLiteralContext extends LiteralContext {
1828
+ infinity() {
1829
+ return this.getRuleContext(0, InfinityContext);
1830
+ }
1831
+ constructor(ctx) {
1832
+ super(ctx.parent, ctx.invokingState);
1833
+ this.copyFrom(ctx);
1834
+ }
1835
+ // @Override
1836
+ accept(visitor) {
1837
+ if (visitor.visitInfinityLiteral) {
1838
+ return visitor.visitInfinityLiteral(this);
1839
+ }
1840
+ else {
1841
+ return visitor.visitChildren(this);
1842
+ }
1843
+ }
1844
+ }
1845
+ exports.InfinityLiteralContext = InfinityLiteralContext;
1846
+ class BooleanLiteralContext extends LiteralContext {
1847
+ boolean() {
1848
+ return this.getRuleContext(0, BooleanContext);
1849
+ }
1850
+ constructor(ctx) {
1851
+ super(ctx.parent, ctx.invokingState);
1852
+ this.copyFrom(ctx);
1853
+ }
1854
+ // @Override
1855
+ accept(visitor) {
1856
+ if (visitor.visitBooleanLiteral) {
1857
+ return visitor.visitBooleanLiteral(this);
1858
+ }
1859
+ else {
1860
+ return visitor.visitChildren(this);
1861
+ }
1862
+ }
1863
+ }
1864
+ exports.BooleanLiteralContext = BooleanLiteralContext;
1865
+ class NullLiteralContext extends LiteralContext {
1866
+ null() {
1867
+ return this.getRuleContext(0, NullContext);
1868
+ }
1869
+ constructor(ctx) {
1870
+ super(ctx.parent, ctx.invokingState);
1871
+ this.copyFrom(ctx);
1872
+ }
1873
+ // @Override
1874
+ accept(visitor) {
1875
+ if (visitor.visitNullLiteral) {
1876
+ return visitor.visitNullLiteral(this);
1877
+ }
1878
+ else {
1879
+ return visitor.visitChildren(this);
1880
+ }
1881
+ }
1882
+ }
1883
+ exports.NullLiteralContext = NullLiteralContext;
1884
+ class DateLiteralContext extends LiteralContext {
1885
+ DATE() { return this.getToken(OpraFilterParser.DATE, 0); }
1886
+ constructor(ctx) {
1887
+ super(ctx.parent, ctx.invokingState);
1888
+ this.copyFrom(ctx);
1889
+ }
1890
+ // @Override
1891
+ accept(visitor) {
1892
+ if (visitor.visitDateLiteral) {
1893
+ return visitor.visitDateLiteral(this);
1894
+ }
1895
+ else {
1896
+ return visitor.visitChildren(this);
1897
+ }
1898
+ }
1899
+ }
1900
+ exports.DateLiteralContext = DateLiteralContext;
1901
+ class DateTimeLiteralContext extends LiteralContext {
1902
+ DATETIME() { return this.getToken(OpraFilterParser.DATETIME, 0); }
1903
+ constructor(ctx) {
1904
+ super(ctx.parent, ctx.invokingState);
1905
+ this.copyFrom(ctx);
1906
+ }
1907
+ // @Override
1908
+ accept(visitor) {
1909
+ if (visitor.visitDateTimeLiteral) {
1910
+ return visitor.visitDateTimeLiteral(this);
1911
+ }
1912
+ else {
1913
+ return visitor.visitChildren(this);
1914
+ }
1915
+ }
1916
+ }
1917
+ exports.DateTimeLiteralContext = DateTimeLiteralContext;
1918
+ class TimeLiteralContext extends LiteralContext {
1919
+ TIME() { return this.getToken(OpraFilterParser.TIME, 0); }
1920
+ constructor(ctx) {
1921
+ super(ctx.parent, ctx.invokingState);
1922
+ this.copyFrom(ctx);
1923
+ }
1924
+ // @Override
1925
+ accept(visitor) {
1926
+ if (visitor.visitTimeLiteral) {
1927
+ return visitor.visitTimeLiteral(this);
1928
+ }
1929
+ else {
1930
+ return visitor.visitChildren(this);
1931
+ }
1932
+ }
1933
+ }
1934
+ exports.TimeLiteralContext = TimeLiteralContext;
1935
+ class StringLiteralContext extends LiteralContext {
1936
+ STRING() { return this.getToken(OpraFilterParser.STRING, 0); }
1937
+ constructor(ctx) {
1938
+ super(ctx.parent, ctx.invokingState);
1939
+ this.copyFrom(ctx);
1940
+ }
1941
+ // @Override
1942
+ accept(visitor) {
1943
+ if (visitor.visitStringLiteral) {
1944
+ return visitor.visitStringLiteral(this);
1945
+ }
1946
+ else {
1947
+ return visitor.visitChildren(this);
1948
+ }
1949
+ }
1950
+ }
1951
+ exports.StringLiteralContext = StringLiteralContext;
1952
+ class CompOpContext extends ParserRuleContext_1.ParserRuleContext {
1953
+ constructor(parent, invokingState) {
1954
+ super(parent, invokingState);
1955
+ }
1956
+ // @Override
1957
+ get ruleIndex() { return OpraFilterParser.RULE_compOp; }
1958
+ // @Override
1959
+ accept(visitor) {
1960
+ if (visitor.visitCompOp) {
1961
+ return visitor.visitCompOp(this);
1962
+ }
1963
+ else {
1964
+ return visitor.visitChildren(this);
1965
+ }
1966
+ }
1967
+ }
1968
+ exports.CompOpContext = CompOpContext;
1969
+ class ArthOpContext extends ParserRuleContext_1.ParserRuleContext {
1970
+ constructor(parent, invokingState) {
1971
+ super(parent, invokingState);
1972
+ }
1973
+ // @Override
1974
+ get ruleIndex() { return OpraFilterParser.RULE_arthOp; }
1975
+ // @Override
1976
+ accept(visitor) {
1977
+ if (visitor.visitArthOp) {
1978
+ return visitor.visitArthOp(this);
1979
+ }
1980
+ else {
1981
+ return visitor.visitChildren(this);
1982
+ }
1983
+ }
1984
+ }
1985
+ exports.ArthOpContext = ArthOpContext;
1986
+ class PolarOpContext extends ParserRuleContext_1.ParserRuleContext {
1987
+ constructor(parent, invokingState) {
1988
+ super(parent, invokingState);
1989
+ }
1990
+ // @Override
1991
+ get ruleIndex() { return OpraFilterParser.RULE_polarOp; }
1992
+ // @Override
1993
+ accept(visitor) {
1994
+ if (visitor.visitPolarOp) {
1995
+ return visitor.visitPolarOp(this);
1996
+ }
1997
+ else {
1998
+ return visitor.visitChildren(this);
1999
+ }
2000
+ }
2001
+ }
2002
+ exports.PolarOpContext = PolarOpContext;
2003
+ class LogOpContext extends ParserRuleContext_1.ParserRuleContext {
2004
+ constructor(parent, invokingState) {
2005
+ super(parent, invokingState);
2006
+ }
2007
+ // @Override
2008
+ get ruleIndex() { return OpraFilterParser.RULE_logOp; }
2009
+ // @Override
2010
+ accept(visitor) {
2011
+ if (visitor.visitLogOp) {
2012
+ return visitor.visitLogOp(this);
2013
+ }
2014
+ else {
2015
+ return visitor.visitChildren(this);
2016
+ }
2017
+ }
2018
+ }
2019
+ exports.LogOpContext = LogOpContext;
2020
+ class BooleanContext extends ParserRuleContext_1.ParserRuleContext {
2021
+ constructor(parent, invokingState) {
2022
+ super(parent, invokingState);
2023
+ }
2024
+ // @Override
2025
+ get ruleIndex() { return OpraFilterParser.RULE_boolean; }
2026
+ // @Override
2027
+ accept(visitor) {
2028
+ if (visitor.visitBoolean) {
2029
+ return visitor.visitBoolean(this);
2030
+ }
2031
+ else {
2032
+ return visitor.visitChildren(this);
2033
+ }
2034
+ }
2035
+ }
2036
+ exports.BooleanContext = BooleanContext;
2037
+ class NullContext extends ParserRuleContext_1.ParserRuleContext {
2038
+ constructor(parent, invokingState) {
2039
+ super(parent, invokingState);
2040
+ }
2041
+ // @Override
2042
+ get ruleIndex() { return OpraFilterParser.RULE_null; }
2043
+ // @Override
2044
+ accept(visitor) {
2045
+ if (visitor.visitNull) {
2046
+ return visitor.visitNull(this);
2047
+ }
2048
+ else {
2049
+ return visitor.visitChildren(this);
2050
+ }
2051
+ }
2052
+ }
2053
+ exports.NullContext = NullContext;
2054
+ class InfinityContext extends ParserRuleContext_1.ParserRuleContext {
2055
+ constructor(parent, invokingState) {
2056
+ super(parent, invokingState);
2057
+ }
2058
+ // @Override
2059
+ get ruleIndex() { return OpraFilterParser.RULE_infinity; }
2060
+ // @Override
2061
+ accept(visitor) {
2062
+ if (visitor.visitInfinity) {
2063
+ return visitor.visitInfinity(this);
2064
+ }
2065
+ else {
2066
+ return visitor.visitChildren(this);
2067
+ }
2068
+ }
2069
+ }
2070
+ exports.InfinityContext = InfinityContext;