expressir 0.2.5-x64-mingw32 → 0.2.11-x64-mingw32

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 (534) hide show
  1. checksums.yaml +5 -5
  2. data/.cross_rubies +30 -0
  3. data/.github/workflows/rake.yml +45 -46
  4. data/.github/workflows/release.yml +83 -75
  5. data/.gitignore +17 -15
  6. data/.gitmodules +3 -3
  7. data/.rspec +2 -2
  8. data/.rubocop.yml +508 -508
  9. data/Gemfile +4 -6
  10. data/README.adoc +147 -147
  11. data/Rakefile +11 -17
  12. data/bin/console +12 -12
  13. data/bin/rspec +29 -29
  14. data/bin/setup +8 -8
  15. data/demo.rb +18 -18
  16. data/docs/development.md +90 -90
  17. data/exe/expressir +20 -20
  18. data/exe/generate-parser +47 -47
  19. data/expressir.gemspec +43 -40
  20. data/lib/expressir.rb +21 -21
  21. data/lib/expressir/cli.rb +27 -27
  22. data/lib/expressir/cli/ui.rb +36 -36
  23. data/lib/expressir/config.rb +23 -23
  24. data/lib/expressir/express.rb +11 -11
  25. data/lib/expressir/express/aggregate_dimension.rb +38 -38
  26. data/lib/expressir/express/attribute.rb +15 -15
  27. data/lib/expressir/express/comment.rb +7 -7
  28. data/lib/expressir/express/defined_type.rb +36 -36
  29. data/lib/expressir/express/derived.rb +65 -65
  30. data/lib/expressir/express/derived_aggregate.rb +43 -43
  31. data/lib/expressir/express/entity.rb +137 -137
  32. data/lib/expressir/express/explicit.rb +70 -70
  33. data/lib/expressir/express/explicit_aggregate.rb +46 -46
  34. data/lib/expressir/express/explicit_or_derived.rb +16 -16
  35. data/lib/expressir/express/global_rule.rb +44 -44
  36. data/lib/expressir/express/interface_specification.rb +51 -51
  37. data/lib/expressir/express/interfaced_item.rb +38 -38
  38. data/lib/expressir/express/inverse.rb +46 -46
  39. data/lib/expressir/express/inverse_aggregate.rb +37 -37
  40. data/lib/expressir/express/model_element.rb +7 -7
  41. data/lib/expressir/express/named_type.rb +19 -19
  42. data/lib/expressir/express/remark.rb +8 -8
  43. data/lib/expressir/express/repository.rb +306 -306
  44. data/lib/expressir/express/schema_definition.rb +96 -96
  45. data/lib/expressir/express/subtype_constraint.rb +14 -14
  46. data/lib/expressir/express/type.rb +26 -26
  47. data/lib/expressir/express/type_aggregate.rb +42 -42
  48. data/lib/expressir/express/type_enum.rb +29 -29
  49. data/lib/expressir/express/type_parser.rb +45 -45
  50. data/lib/expressir/express/type_select.rb +82 -82
  51. data/lib/expressir/express/unique_rule.rb +35 -35
  52. data/lib/expressir/express/where_rule.rb +32 -32
  53. data/lib/expressir/express_exp/2.4/express_parser.so +0 -0
  54. data/lib/expressir/express_exp/2.5/express_parser.so +0 -0
  55. data/lib/expressir/express_exp/2.6/express_parser.so +0 -0
  56. data/lib/expressir/express_exp/2.7/express_parser.so +0 -0
  57. data/lib/expressir/express_exp/3.0/express_parser.so +0 -0
  58. data/lib/expressir/express_exp/formatter.rb +1500 -1449
  59. data/lib/expressir/express_exp/parser.rb +53 -35
  60. data/lib/expressir/express_exp/visitor.rb +2551 -2450
  61. data/lib/expressir/express_parser.rb +30 -30
  62. data/lib/expressir/model.rb +67 -64
  63. data/lib/expressir/model/attribute.rb +28 -26
  64. data/lib/expressir/model/constant.rb +18 -16
  65. data/lib/expressir/model/entity.rb +38 -45
  66. data/lib/expressir/model/enumeration_item.rb +12 -10
  67. data/lib/expressir/model/expressions/aggregate_initializer.rb +12 -12
  68. data/lib/expressir/model/expressions/aggregate_item.rb +14 -14
  69. data/lib/expressir/model/expressions/attribute_reference.rb +14 -14
  70. data/lib/expressir/model/expressions/binary_expression.rb +39 -39
  71. data/lib/expressir/model/expressions/call.rb +14 -14
  72. data/lib/expressir/model/expressions/entity_constructor.rb +14 -14
  73. data/lib/expressir/model/expressions/group_reference.rb +14 -14
  74. data/lib/expressir/model/expressions/index_reference.rb +16 -16
  75. data/lib/expressir/model/expressions/interval.rb +20 -20
  76. data/lib/expressir/model/expressions/query_expression.rb +27 -25
  77. data/lib/expressir/model/expressions/simple_reference.rb +12 -12
  78. data/lib/expressir/model/expressions/unary_expression.rb +18 -18
  79. data/lib/expressir/model/function.rb +55 -61
  80. data/lib/expressir/model/identifier.rb +9 -8
  81. data/lib/expressir/model/informal_proposition.rb +13 -0
  82. data/lib/expressir/model/interface.rb +17 -17
  83. data/lib/expressir/model/literals/binary.rb +12 -12
  84. data/lib/expressir/model/literals/integer.rb +12 -12
  85. data/lib/expressir/model/literals/logical.rb +16 -16
  86. data/lib/expressir/model/literals/real.rb +12 -12
  87. data/lib/expressir/model/literals/string.rb +14 -14
  88. data/lib/expressir/model/model_element.rb +73 -0
  89. data/lib/expressir/model/parameter.rb +18 -16
  90. data/lib/expressir/model/procedure.rb +53 -59
  91. data/lib/expressir/model/renamed_ref.rb +12 -12
  92. data/lib/expressir/model/repository.rb +18 -18
  93. data/lib/expressir/model/rule.rb +58 -61
  94. data/lib/expressir/model/schema.rb +55 -66
  95. data/lib/expressir/model/scope.rb +70 -16
  96. data/lib/expressir/model/statements/alias.rb +27 -25
  97. data/lib/expressir/model/statements/assignment.rb +14 -14
  98. data/lib/expressir/model/statements/call.rb +14 -14
  99. data/lib/expressir/model/statements/case.rb +16 -16
  100. data/lib/expressir/model/statements/case_action.rb +14 -14
  101. data/lib/expressir/model/statements/compound.rb +12 -12
  102. data/lib/expressir/model/statements/escape.rb +7 -7
  103. data/lib/expressir/model/statements/if.rb +16 -16
  104. data/lib/expressir/model/statements/null.rb +7 -7
  105. data/lib/expressir/model/statements/repeat.rb +35 -33
  106. data/lib/expressir/model/statements/return.rb +12 -12
  107. data/lib/expressir/model/statements/skip.rb +7 -7
  108. data/lib/expressir/model/subtype_constraint.rb +28 -26
  109. data/lib/expressir/model/type.rb +33 -23
  110. data/lib/expressir/model/types/aggregate.rb +18 -16
  111. data/lib/expressir/model/types/array.rb +20 -20
  112. data/lib/expressir/model/types/bag.rb +16 -16
  113. data/lib/expressir/model/types/binary.rb +14 -14
  114. data/lib/expressir/model/types/boolean.rb +7 -7
  115. data/lib/expressir/model/types/enumeration.rb +18 -18
  116. data/lib/expressir/model/types/generic.rb +14 -12
  117. data/lib/expressir/model/types/generic_entity.rb +14 -12
  118. data/lib/expressir/model/types/integer.rb +7 -7
  119. data/lib/expressir/model/types/list.rb +18 -18
  120. data/lib/expressir/model/types/logical.rb +7 -7
  121. data/lib/expressir/model/types/number.rb +7 -7
  122. data/lib/expressir/model/types/real.rb +12 -12
  123. data/lib/expressir/model/types/select.rb +20 -20
  124. data/lib/expressir/model/types/set.rb +16 -16
  125. data/lib/expressir/model/types/string.rb +14 -14
  126. data/lib/expressir/model/unique.rb +16 -14
  127. data/lib/expressir/model/variable.rb +18 -16
  128. data/lib/expressir/model/where.rb +16 -14
  129. data/lib/expressir/parser.rb +6 -6
  130. data/lib/expressir/parser/owl_parser.rb +8 -8
  131. data/lib/expressir/version.rb +3 -3
  132. data/original/examples/ap233/ap233e1_arm_lf_stepmod-2010-11-12.exp +9589 -9589
  133. data/original/examples/ap233/ap233e1_arm_lf_stepmod-2010-11-12.owl +36619 -36619
  134. data/original/examples/ap233/ap233e1_arm_lf_stepmod-2010-11-12.xml +13293 -13293
  135. data/original/examples/employment/eclipse/.project +17 -17
  136. data/original/examples/employment/eclipse/Express/employment_schema.exp +33 -33
  137. data/original/examples/employment/eclipse/Express/employment_schema.xmi +77 -77
  138. data/original/examples/employment/eclipse/Express/employment_schema.xml +92 -92
  139. data/original/examples/employment/eclipse/Models/Employment.uml +4 -4
  140. data/original/examples/employment/eclipse/Models/Employment.umldi +240 -240
  141. data/original/examples/employment/eclipse/readme.txt +6 -6
  142. data/original/examples/employment/employment_schema.exp +33 -33
  143. data/original/examples/employment/employment_schema.rb +232 -232
  144. data/original/examples/employment/employment_schema.xml +92 -92
  145. data/original/examples/employment/employment_schema___module.rb +46 -46
  146. data/original/examples/employment/employment_schema___p28attr.rb +126 -126
  147. data/original/examples/employment/employment_schema___p28inst.rb +26 -26
  148. data/original/examples/employment/example_employment_data.xml +1 -1
  149. data/original/examples/employment/example_employment_data_copy.xml +1 -1
  150. data/original/examples/employment/example_employment_reader.rb +30 -30
  151. data/original/examples/employment/example_employment_writer.rb +51 -51
  152. data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.exp +3710 -3710
  153. data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.owl +35880 -35880
  154. data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.xmi +15357 -15357
  155. data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.xml +9467 -9467
  156. data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.exp +8404 -8404
  157. data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.owl +43147 -43147
  158. data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.xmi +18341 -18341
  159. data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.xml +11631 -11631
  160. data/original/examples/syntax/remark.exp +189 -145
  161. data/original/examples/syntax/remark_formatted.exp +213 -174
  162. data/original/examples/syntax/simple.exp +3 -0
  163. data/original/examples/syntax/source.exp +16 -0
  164. data/original/examples/syntax/syntax.exp +323 -310
  165. data/original/examples/syntax/syntax_formatted.exp +753 -1186
  166. data/original/exp2ruby.rb +525 -525
  167. data/original/expsm.rb +34 -34
  168. data/original/mapping_owl.rb +1018 -1018
  169. data/original/mapping_sysml.rb +2281 -2281
  170. data/original/mapping_uml2.rb +598 -598
  171. data/original/mapping_uml2_eclipse.rb +433 -433
  172. data/original/reeper.rb +134 -134
  173. data/rakelib/cross-ruby.rake +308 -0
  174. data/spec/acceptance/express_to_owl_spec.rb +18 -18
  175. data/spec/acceptance/version_spec.rb +12 -12
  176. data/spec/expressir/express/repository_spec.rb +25 -25
  177. data/spec/expressir/express_exp/ap233_spec.rb +22 -22
  178. data/spec/expressir/express_exp/format_remark_spec.rb +28 -28
  179. data/spec/expressir/express_exp/format_syntax_spec.rb +28 -28
  180. data/spec/expressir/express_exp/head_source_spec.rb +38 -0
  181. data/spec/expressir/express_exp/parse_multiple_spec.rb +32 -0
  182. data/spec/expressir/express_exp/parse_remark_spec.rb +411 -345
  183. data/spec/expressir/express_exp/parse_syntax_spec.rb +3048 -2998
  184. data/spec/expressir/express_exp/source_spec.rb +29 -0
  185. data/spec/expressir/model/model_element_spec.rb +77 -0
  186. data/spec/expressir/model/{find_spec.rb → scope_spec.rb} +123 -110
  187. data/spec/expressr_spec.rb +5 -5
  188. data/spec/spec_helper.rb +17 -17
  189. data/spec/support/console_helper.rb +29 -29
  190. metadata +41 -371
  191. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/CMakeLists.txt +0 -118
  192. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2013.vcxproj +0 -637
  193. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2013.vcxproj.filters +0 -984
  194. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2015.vcxproj +0 -652
  195. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2015.vcxproj.filters +0 -990
  196. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2017.vcxproj +0 -652
  197. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2017.vcxproj.filters +0 -990
  198. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2019.vcxproj +0 -652
  199. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2019.vcxproj.filters +0 -990
  200. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp-ios/Info.plist +0 -26
  201. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp-ios/antlrcpp_ios.h +0 -17
  202. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.pbxproj +0 -3024
  203. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  204. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  205. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4.xcscheme +0 -76
  206. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_ios.xcscheme +0 -80
  207. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_static.xcscheme +0 -80
  208. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorListener.cpp +0 -10
  209. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorListener.h +0 -167
  210. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorStrategy.cpp +0 -10
  211. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorStrategy.h +0 -121
  212. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRFileStream.cpp +0 -34
  213. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRFileStream.h +0 -27
  214. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.cpp +0 -155
  215. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.h +0 -69
  216. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BailErrorStrategy.cpp +0 -61
  217. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BailErrorStrategy.h +0 -59
  218. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BaseErrorListener.cpp +0 -25
  219. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BaseErrorListener.h +0 -36
  220. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BufferedTokenStream.cpp +0 -414
  221. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BufferedTokenStream.h +0 -200
  222. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CharStream.cpp +0 -11
  223. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CharStream.h +0 -37
  224. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonToken.cpp +0 -195
  225. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonToken.h +0 -158
  226. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenFactory.cpp +0 -39
  227. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenFactory.h +0 -74
  228. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenStream.cpp +0 -78
  229. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenStream.h +0 -79
  230. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ConsoleErrorListener.cpp +0 -15
  231. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ConsoleErrorListener.h +0 -35
  232. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/DefaultErrorStrategy.cpp +0 -333
  233. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/DefaultErrorStrategy.h +0 -466
  234. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/DiagnosticErrorListener.cpp +0 -84
  235. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/DiagnosticErrorListener.h +0 -80
  236. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Exceptions.cpp +0 -64
  237. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Exceptions.h +0 -99
  238. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/FailedPredicateException.cpp +0 -51
  239. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/FailedPredicateException.h +0 -32
  240. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/InputMismatchException.cpp +0 -18
  241. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/InputMismatchException.h +0 -24
  242. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/IntStream.cpp +0 -12
  243. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/IntStream.h +0 -218
  244. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/InterpreterRuleContext.cpp +0 -19
  245. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/InterpreterRuleContext.h +0 -45
  246. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.cpp +0 -295
  247. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.h +0 -196
  248. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerInterpreter.cpp +0 -75
  249. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerInterpreter.h +0 -52
  250. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerNoViableAltException.cpp +0 -36
  251. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerNoViableAltException.h +0 -31
  252. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ListTokenSource.cpp +0 -92
  253. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ListTokenSource.h +0 -88
  254. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/NoViableAltException.cpp +0 -46
  255. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/NoViableAltException.h +0 -42
  256. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.cpp +0 -648
  257. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.h +0 -467
  258. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserInterpreter.cpp +0 -306
  259. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserInterpreter.h +0 -179
  260. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.cpp +0 -141
  261. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.h +0 -147
  262. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ProxyErrorListener.cpp +0 -53
  263. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ProxyErrorListener.h +0 -38
  264. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RecognitionException.cpp +0 -66
  265. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RecognitionException.h +0 -98
  266. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Recognizer.cpp +0 -167
  267. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Recognizer.h +0 -164
  268. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContext.cpp +0 -143
  269. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContext.h +0 -137
  270. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContextWithAltNum.cpp +0 -27
  271. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContextWithAltNum.h +0 -32
  272. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuntimeMetaData.cpp +0 -53
  273. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuntimeMetaData.h +0 -155
  274. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Token.cpp +0 -9
  275. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Token.h +0 -92
  276. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenFactory.h +0 -30
  277. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenSource.cpp +0 -9
  278. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenSource.h +0 -85
  279. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStream.cpp +0 -11
  280. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStream.h +0 -137
  281. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.cpp +0 -425
  282. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.h +0 -293
  283. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedCharStream.cpp +0 -211
  284. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedCharStream.h +0 -123
  285. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedTokenStream.cpp +0 -270
  286. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedTokenStream.h +0 -115
  287. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.cpp +0 -104
  288. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.h +0 -193
  289. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/WritableToken.cpp +0 -9
  290. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/WritableToken.h +0 -23
  291. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/antlr4-common.h +0 -137
  292. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/antlr4-runtime.h +0 -167
  293. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.cpp +0 -209
  294. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.h +0 -112
  295. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.cpp +0 -113
  296. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.h +0 -148
  297. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfigSet.cpp +0 -228
  298. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfigSet.h +0 -110
  299. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.cpp +0 -64
  300. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.h +0 -50
  301. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.cpp +0 -758
  302. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.h +0 -85
  303. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSerializer.cpp +0 -621
  304. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSerializer.h +0 -61
  305. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSimulator.cpp +0 -63
  306. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSimulator.h +0 -87
  307. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.cpp +0 -72
  308. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.h +0 -133
  309. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNType.h +0 -20
  310. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AbstractPredicateTransition.cpp +0 -14
  311. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AbstractPredicateTransition.h +0 -24
  312. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ActionTransition.cpp +0 -33
  313. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ActionTransition.h +0 -33
  314. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AmbiguityInfo.cpp +0 -16
  315. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AmbiguityInfo.h +0 -68
  316. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.cpp +0 -82
  317. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.h +0 -43
  318. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AtomTransition.cpp +0 -31
  319. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AtomTransition.h +0 -30
  320. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicBlockStartState.cpp +0 -12
  321. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicBlockStartState.h +0 -22
  322. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicState.cpp +0 -12
  323. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicState.h +0 -21
  324. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockEndState.cpp +0 -15
  325. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockEndState.h +0 -24
  326. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockStartState.cpp +0 -9
  327. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockStartState.h +0 -21
  328. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.cpp +0 -14
  329. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.h +0 -47
  330. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionEventInfo.cpp +0 -14
  331. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionEventInfo.h +0 -70
  332. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionInfo.cpp +0 -25
  333. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionInfo.h +0 -227
  334. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionState.cpp +0 -17
  335. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionState.h +0 -30
  336. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EmptyPredictionContext.cpp +0 -35
  337. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EmptyPredictionContext.h +0 -27
  338. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EpsilonTransition.cpp +0 -35
  339. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EpsilonTransition.h +0 -39
  340. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ErrorInfo.cpp +0 -15
  341. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ErrorInfo.h +0 -43
  342. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.cpp +0 -158
  343. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.h +0 -109
  344. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNConfig.cpp +0 -84
  345. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNConfig.h +0 -44
  346. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNSimulator.cpp +0 -628
  347. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNSimulator.h +0 -210
  348. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerAction.cpp +0 -9
  349. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerAction.h +0 -66
  350. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionExecutor.cpp +0 -107
  351. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionExecutor.h +0 -115
  352. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionType.h +0 -55
  353. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerChannelAction.cpp +0 -55
  354. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerChannelAction.h +0 -63
  355. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerCustomAction.cpp +0 -62
  356. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerCustomAction.h +0 -87
  357. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.cpp +0 -63
  358. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.h +0 -82
  359. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerModeAction.cpp +0 -56
  360. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerModeAction.h +0 -61
  361. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerMoreAction.cpp +0 -47
  362. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerMoreAction.h +0 -57
  363. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPopModeAction.cpp +0 -47
  364. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPopModeAction.h +0 -57
  365. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPushModeAction.cpp +0 -56
  366. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPushModeAction.h +0 -61
  367. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerSkipAction.cpp +0 -47
  368. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerSkipAction.h +0 -55
  369. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerTypeAction.cpp +0 -56
  370. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerTypeAction.h +0 -55
  371. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LookaheadEventInfo.cpp +0 -16
  372. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LookaheadEventInfo.h +0 -42
  373. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LoopEndState.cpp +0 -12
  374. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LoopEndState.h +0 -22
  375. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Makefile +0 -67
  376. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/NotSetTransition.cpp +0 -27
  377. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/NotSetTransition.h +0 -25
  378. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.cpp +0 -12
  379. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.h +0 -20
  380. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParseInfo.cpp +0 -102
  381. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParseInfo.h +0 -102
  382. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulator.cpp +0 -1366
  383. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulator.h +0 -904
  384. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusBlockStartState.cpp +0 -12
  385. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusBlockStartState.h +0 -25
  386. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusLoopbackState.cpp +0 -12
  387. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusLoopbackState.h +0 -22
  388. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.cpp +0 -32
  389. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.h +0 -29
  390. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.cpp +0 -17
  391. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.h +0 -62
  392. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateTransition.cpp +0 -34
  393. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateTransition.h +0 -39
  394. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContext.cpp +0 -662
  395. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContext.h +0 -254
  396. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionMode.cpp +0 -201
  397. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionMode.h +0 -436
  398. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.cpp +0 -179
  399. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.h +0 -60
  400. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RangeTransition.cpp +0 -30
  401. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RangeTransition.h +0 -29
  402. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStartState.cpp +0 -16
  403. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStartState.h +0 -25
  404. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStopState.cpp +0 -12
  405. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStopState.h +0 -25
  406. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleTransition.cpp +0 -37
  407. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleTransition.h +0 -40
  408. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContext.cpp +0 -377
  409. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContext.h +0 -222
  410. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SetTransition.cpp +0 -32
  411. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SetTransition.h +0 -30
  412. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.cpp +0 -81
  413. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.h +0 -36
  414. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarBlockStartState.cpp +0 -12
  415. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarBlockStartState.h +0 -21
  416. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopEntryState.cpp +0 -15
  417. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopEntryState.h +0 -35
  418. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopbackState.cpp +0 -19
  419. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopbackState.h +0 -21
  420. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TokensStartState.cpp +0 -12
  421. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TokensStartState.h +0 -21
  422. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Transition.cpp +0 -44
  423. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Transition.h +0 -76
  424. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/WildcardTransition.cpp +0 -25
  425. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/WildcardTransition.h +0 -25
  426. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFA.cpp +0 -127
  427. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFA.h +0 -91
  428. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFASerializer.cpp +0 -67
  429. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFASerializer.h +0 -32
  430. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFAState.cpp +0 -100
  431. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFAState.h +0 -144
  432. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.cpp +0 -20
  433. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.h +0 -23
  434. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/InterpreterDataReader.cpp +0 -124
  435. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/InterpreterDataReader.h +0 -31
  436. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Interval.cpp +0 -89
  437. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Interval.h +0 -84
  438. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/IntervalSet.cpp +0 -521
  439. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/IntervalSet.h +0 -198
  440. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/MurmurHash.cpp +0 -134
  441. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/MurmurHash.h +0 -76
  442. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Predicate.cpp +0 -4
  443. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Predicate.h +0 -21
  444. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Any.cpp +0 -13
  445. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Any.h +0 -170
  446. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Arrays.cpp +0 -43
  447. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Arrays.h +0 -110
  448. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/BitSet.h +0 -76
  449. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/CPPUtils.cpp +0 -248
  450. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/CPPUtils.h +0 -78
  451. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Declarations.h +0 -163
  452. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.cpp +0 -36
  453. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.h +0 -54
  454. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/guid.cpp +0 -303
  455. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/guid.h +0 -112
  456. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/AbstractParseTreeVisitor.h +0 -128
  457. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNode.cpp +0 -9
  458. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNode.h +0 -19
  459. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.cpp +0 -23
  460. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.h +0 -33
  461. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/IterativeParseTreeWalker.cpp +0 -71
  462. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/IterativeParseTreeWalker.h +0 -53
  463. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTree.cpp +0 -15
  464. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTree.h +0 -102
  465. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeListener.cpp +0 -9
  466. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeListener.h +0 -39
  467. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeProperty.h +0 -50
  468. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeVisitor.cpp +0 -9
  469. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeVisitor.h +0 -57
  470. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeWalker.cpp +0 -49
  471. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeWalker.h +0 -31
  472. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNode.cpp +0 -9
  473. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNode.h +0 -32
  474. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.cpp +0 -57
  475. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.h +0 -33
  476. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/Trees.cpp +0 -241
  477. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/Trees.h +0 -78
  478. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/Chunk.cpp +0 -9
  479. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/Chunk.h +0 -44
  480. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreeMatch.cpp +0 -69
  481. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreeMatch.h +0 -132
  482. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePattern.cpp +0 -64
  483. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePattern.h +0 -105
  484. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePatternMatcher.cpp +0 -371
  485. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePatternMatcher.h +0 -185
  486. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/RuleTagToken.cpp +0 -77
  487. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/RuleTagToken.h +0 -117
  488. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TagChunk.cpp +0 -39
  489. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TagChunk.h +0 -86
  490. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TextChunk.cpp +0 -28
  491. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TextChunk.h +0 -51
  492. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TokenTagToken.cpp +0 -36
  493. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TokenTagToken.h +0 -80
  494. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPath.cpp +0 -154
  495. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPath.h +0 -86
  496. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathElement.cpp +0 -31
  497. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathElement.h +0 -40
  498. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.cpp +0 -173
  499. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.g4 +0 -64
  500. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.h +0 -56
  501. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.tokens +0 -12
  502. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexerErrorListener.cpp +0 -13
  503. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexerErrorListener.h +0 -22
  504. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleAnywhereElement.cpp +0 -20
  505. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleAnywhereElement.h +0 -27
  506. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleElement.cpp +0 -30
  507. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleElement.h +0 -26
  508. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenAnywhereElement.cpp +0 -20
  509. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenAnywhereElement.h +0 -25
  510. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenElement.cpp +0 -33
  511. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenElement.h +0 -26
  512. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardAnywhereElement.cpp +0 -23
  513. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardAnywhereElement.h +0 -23
  514. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardElement.cpp +0 -24
  515. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardElement.h +0 -23
  516. data/ext/express-parser/antlrgen/Express.interp +0 -532
  517. data/ext/express-parser/antlrgen/Express.tokens +0 -190
  518. data/ext/express-parser/antlrgen/ExpressBaseListener.cpp +0 -7
  519. data/ext/express-parser/antlrgen/ExpressBaseListener.h +0 -623
  520. data/ext/express-parser/antlrgen/ExpressBaseVisitor.cpp +0 -7
  521. data/ext/express-parser/antlrgen/ExpressBaseVisitor.h +0 -816
  522. data/ext/express-parser/antlrgen/ExpressLexer.cpp +0 -1169
  523. data/ext/express-parser/antlrgen/ExpressLexer.h +0 -85
  524. data/ext/express-parser/antlrgen/ExpressLexer.interp +0 -534
  525. data/ext/express-parser/antlrgen/ExpressLexer.tokens +0 -190
  526. data/ext/express-parser/antlrgen/ExpressListener.cpp +0 -7
  527. data/ext/express-parser/antlrgen/ExpressListener.h +0 -616
  528. data/ext/express-parser/antlrgen/ExpressParser.cpp +0 -17284
  529. data/ext/express-parser/antlrgen/ExpressParser.h +0 -3696
  530. data/ext/express-parser/antlrgen/ExpressVisitor.cpp +0 -7
  531. data/ext/express-parser/antlrgen/ExpressVisitor.h +0 -422
  532. data/ext/express-parser/express_parser.cpp +0 -17931
  533. data/ext/express-parser/extconf.rb +0 -34
  534. data/lib/express_parser.so +0 -0
@@ -1,18 +1,18 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe "Expressir" do
4
- describe "express-to-owl" do
5
- pending "Still needs implementation"
6
-
7
- it "convert express to owl system" do
8
- command = %W(express-to-owl #{sample_file})
9
- capture_stdout { Expressir::Cli.start(command) }
10
- end
11
- end
12
-
13
- def sample_file
14
- @sample_file ||= Expressir.root_path.join(
15
- "original", "examples", "ap233", "ap233e1_arm_lf_stepmod-2010-11-12.xml"
16
- )
17
- end
18
- end
1
+ require "spec_helper"
2
+
3
+ RSpec.describe "Expressir" do
4
+ describe "express-to-owl" do
5
+ pending "Still needs implementation"
6
+
7
+ it "convert express to owl system" do
8
+ command = %W(express-to-owl #{sample_file})
9
+ capture_stdout { Expressir::Cli.start(command) }
10
+ end
11
+ end
12
+
13
+ def sample_file
14
+ @sample_file ||= Expressir.root_path.join(
15
+ "original", "examples", "ap233", "ap233e1_arm_lf_stepmod-2010-11-12.xml"
16
+ )
17
+ end
18
+ end
@@ -1,12 +1,12 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe "Expressir" do
4
- describe "version" do
5
- it "displays the current verison" do
6
- command = %w(version)
7
- output = capture_stdout { Expressir::Cli.start(command) }
8
-
9
- expect(output).to include("Version #{Expressir::VERSION}")
10
- end
11
- end
12
- end
1
+ require "spec_helper"
2
+
3
+ RSpec.describe "Expressir" do
4
+ describe "version" do
5
+ it "displays the current verison" do
6
+ command = %w(version)
7
+ output = capture_stdout { Expressir::Cli.start(command) }
8
+
9
+ expect(output).to include("Version #{Expressir::VERSION}")
10
+ end
11
+ end
12
+ end
@@ -1,25 +1,25 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe Expressir::Express::Repository do
4
- describe ".from_file" do
5
- it "build an instance from a file" do
6
- name = "Ap233_systems_engineering_arm_LF"
7
-
8
- repo = Expressir::Express::Repository.from_xml(sample_file)
9
- schema = repo.schemas.first
10
-
11
- expect(repo.name).to eq(name)
12
- expect(repo.schemas.count).to eq(1)
13
- expect(schema.name).to eq(name)
14
- expect(schema.contents.count).to eq(795)
15
- expect(schema.contents.first.schema).to eq(name)
16
- expect(schema.contents.first.name).to eq("Abs_function")
17
- end
18
- end
19
-
20
- def sample_file
21
- @sample_file ||= Expressir.root_path.join(
22
- "original", "examples", "ap233", "ap233e1_arm_lf_stepmod-2010-11-12.xml"
23
- )
24
- end
25
- end
1
+ require "spec_helper"
2
+
3
+ RSpec.describe Expressir::Express::Repository do
4
+ describe ".from_file" do
5
+ it "build an instance from a file" do
6
+ name = "Ap233_systems_engineering_arm_LF"
7
+
8
+ repo = Expressir::Express::Repository.from_xml(sample_file)
9
+ schema = repo.schemas.first
10
+
11
+ expect(repo.name).to eq(name)
12
+ expect(repo.schemas.count).to eq(1)
13
+ expect(schema.name).to eq(name)
14
+ expect(schema.contents.count).to eq(795)
15
+ expect(schema.contents.first.schema).to eq(name)
16
+ expect(schema.contents.first.name).to eq("Abs_function")
17
+ end
18
+ end
19
+
20
+ def sample_file
21
+ @sample_file ||= Expressir.root_path.join(
22
+ "original", "examples", "ap233", "ap233e1_arm_lf_stepmod-2010-11-12.xml"
23
+ )
24
+ end
25
+ end
@@ -1,22 +1,22 @@
1
- require "spec_helper"
2
- require "expressir/express_exp/parser"
3
-
4
- RSpec.describe Expressir::ExpressExp::Parser do
5
- describe ".from_file" do
6
- it "build an instance from a file" do
7
- repo = Expressir::ExpressExp::Parser.from_exp(sample_file)
8
-
9
- schemas = repo.schemas
10
- expect(schemas.count).to eq(1)
11
-
12
- schema = schemas.first
13
- expect(schema.id).to eq("Ap233_systems_engineering_arm_LF")
14
- end
15
- end
16
-
17
- def sample_file
18
- @sample_file ||= Expressir.root_path.join(
19
- "original", "examples", "ap233", "ap233e1_arm_lf_stepmod-2010-11-12.exp"
20
- )
21
- end
22
- end
1
+ require "spec_helper"
2
+ require "expressir/express_exp/parser"
3
+
4
+ RSpec.describe Expressir::ExpressExp::Parser do
5
+ describe ".from_file" do
6
+ it "build an instance from a file" do
7
+ repo = Expressir::ExpressExp::Parser.from_exp(sample_file)
8
+
9
+ schemas = repo.schemas
10
+ expect(schemas.count).to eq(1)
11
+
12
+ schema = schemas.first
13
+ expect(schema.id).to eq("Ap233_systems_engineering_arm_LF")
14
+ end
15
+ end
16
+
17
+ def sample_file
18
+ @sample_file ||= Expressir.root_path.join(
19
+ "original", "examples", "ap233", "ap233e1_arm_lf_stepmod-2010-11-12.exp"
20
+ )
21
+ end
22
+ end
@@ -1,28 +1,28 @@
1
- require "spec_helper"
2
- require "expressir/express_exp/parser"
3
- require "expressir/express_exp/formatter"
4
-
5
- RSpec.describe Expressir::ExpressExp::Formatter do
6
- describe ".format" do
7
- it "formats a file" do
8
- repo = Expressir::ExpressExp::Parser.from_exp(input_file)
9
-
10
- result = Expressir::ExpressExp::Formatter.format(repo)
11
- expected_result = File.read(output_file)
12
-
13
- expect(result).to eq(expected_result)
14
- end
15
- end
16
-
17
- def input_file
18
- @input_file ||= Expressir.root_path.join(
19
- "original", "examples", "syntax", "remark.exp"
20
- )
21
- end
22
-
23
- def output_file
24
- @output_file ||= Expressir.root_path.join(
25
- "original", "examples", "syntax", "remark_formatted.exp"
26
- )
27
- end
28
- end
1
+ require "spec_helper"
2
+ require "expressir/express_exp/parser"
3
+ require "expressir/express_exp/formatter"
4
+
5
+ RSpec.describe Expressir::ExpressExp::Formatter do
6
+ describe ".format" do
7
+ it "formats a file" do
8
+ repo = Expressir::ExpressExp::Parser.from_exp(input_file)
9
+
10
+ result = Expressir::ExpressExp::Formatter.format(repo)
11
+ expected_result = File.read(output_file)
12
+
13
+ expect(result).to eq(expected_result)
14
+ end
15
+ end
16
+
17
+ def input_file
18
+ @input_file ||= Expressir.root_path.join(
19
+ "original", "examples", "syntax", "remark.exp"
20
+ )
21
+ end
22
+
23
+ def output_file
24
+ @output_file ||= Expressir.root_path.join(
25
+ "original", "examples", "syntax", "remark_formatted.exp"
26
+ )
27
+ end
28
+ end
@@ -1,28 +1,28 @@
1
- require "spec_helper"
2
- require "expressir/express_exp/parser"
3
- require "expressir/express_exp/formatter"
4
-
5
- RSpec.describe Expressir::ExpressExp::Formatter do
6
- describe ".format" do
7
- it "formats a file" do
8
- repo = Expressir::ExpressExp::Parser.from_exp(input_file)
9
-
10
- result = Expressir::ExpressExp::Formatter.format(repo)
11
- expected_result = File.read(output_file)
12
-
13
- expect(result).to eq(expected_result)
14
- end
15
- end
16
-
17
- def input_file
18
- @input_file ||= Expressir.root_path.join(
19
- "original", "examples", "syntax", "syntax.exp"
20
- )
21
- end
22
-
23
- def output_file
24
- @output_file ||= Expressir.root_path.join(
25
- "original", "examples", "syntax", "syntax_formatted.exp"
26
- )
27
- end
28
- end
1
+ require "spec_helper"
2
+ require "expressir/express_exp/parser"
3
+ require "expressir/express_exp/formatter"
4
+
5
+ RSpec.describe Expressir::ExpressExp::Formatter do
6
+ describe ".format" do
7
+ it "formats a file" do
8
+ repo = Expressir::ExpressExp::Parser.from_exp(input_file)
9
+
10
+ result = Expressir::ExpressExp::Formatter.format(repo)
11
+ expected_result = File.read(output_file)
12
+
13
+ expect(result).to eq(expected_result)
14
+ end
15
+ end
16
+
17
+ def input_file
18
+ @input_file ||= Expressir.root_path.join(
19
+ "original", "examples", "syntax", "syntax.exp"
20
+ )
21
+ end
22
+
23
+ def output_file
24
+ @output_file ||= Expressir.root_path.join(
25
+ "original", "examples", "syntax", "syntax_formatted.exp"
26
+ )
27
+ end
28
+ end
@@ -0,0 +1,38 @@
1
+ require "spec_helper"
2
+ require "expressir/express_exp/parser"
3
+
4
+ RSpec.describe Expressir::ExpressExp::Parser do
5
+ describe ".head_source" do
6
+ it "contains original head source" do
7
+ input = File.read(sample_file)
8
+ repo = Expressir::ExpressExp::Parser.from_exp(sample_file)
9
+
10
+ repo.schemas[0].tap do |x|
11
+ start_index = x.source.index("SCHEMA")
12
+ stop_index = x.source.index(";") + ";".length - 1
13
+ expected_result = x.source[start_index..stop_index]
14
+ expect(x.head_source).to eq(expected_result)
15
+ end
16
+
17
+ repo.schemas[1].tap do |x|
18
+ start_index = x.source.index("SCHEMA")
19
+ stop_index = x.source.index(";") + ";".length - 1
20
+ expected_result = x.source[start_index..stop_index]
21
+ expect(x.head_source).to eq(expected_result)
22
+ end
23
+
24
+ repo.schemas[2].tap do |x|
25
+ start_index = x.source.index("SCHEMA")
26
+ stop_index = x.source.index("REFERENCE FROM contract_schema;") + "REFERENCE FROM contract_schema;".length - 1
27
+ expected_result = x.source[start_index..stop_index]
28
+ expect(x.head_source).to eq(expected_result)
29
+ end
30
+ end
31
+ end
32
+
33
+ def sample_file
34
+ @sample_file ||= Expressir.root_path.join(
35
+ "original", "examples", "syntax", "source.exp"
36
+ )
37
+ end
38
+ end
@@ -0,0 +1,32 @@
1
+ require "spec_helper"
2
+ require "expressir/express_exp/parser"
3
+
4
+ RSpec.describe Expressir::ExpressExp::Parser do
5
+ describe ".from_files" do
6
+ it "build an instance from multiple files file" do
7
+ repo = Expressir::ExpressExp::Parser.from_files(sample_files)
8
+
9
+ schemas = repo.schemas
10
+ expect(schemas.count).to eq(5)
11
+ expect(schemas[0].id).to eq("syntax_schema")
12
+ expect(schemas[1].id).to eq("remark_schema")
13
+ expect(schemas[2].id).to eq("entity_schema")
14
+ expect(schemas[3].id).to eq("version_entity_schema")
15
+ expect(schemas[4].id).to eq("version_interface_entity_schema")
16
+ end
17
+ end
18
+
19
+ def sample_files
20
+ @sample_files ||= [
21
+ Expressir.root_path.join(
22
+ "original", "examples", "syntax", "syntax.exp"
23
+ ),
24
+ Expressir.root_path.join(
25
+ "original", "examples", "syntax", "remark.exp"
26
+ ),
27
+ Expressir.root_path.join(
28
+ "original", "examples", "syntax", "source.exp"
29
+ )
30
+ ]
31
+ end
32
+ end
@@ -1,345 +1,411 @@
1
- require "spec_helper"
2
- require "expressir/express_exp/parser"
3
-
4
- RSpec.describe Expressir::ExpressExp::Parser do
5
- describe ".from_file" do
6
- it "build an instance from a file" do
7
- repo = Expressir::ExpressExp::Parser.from_exp(sample_file)
8
-
9
- schema = repo.schemas.first
10
-
11
- schema.tap do |x|
12
- expect(x).to be_instance_of(Expressir::Model::Schema)
13
- expect(x.remarks).to be_instance_of(Array)
14
- expect(x.remarks.count).to eq(4)
15
- expect(x.remarks[0]).to eq("Any character within the EXPRESS character set may occur between the start and end of\nan embedded remark including the newline character; therefore, embedded remarks can span\nseveral physical lines.")
16
- expect(x.remarks[1]).to eq("The tail remark is written at the end of a physical line.")
17
- expect(x.remarks[2]).to eq("universal scope - schema before")
18
- expect(x.remarks[3]).to eq("universal scope - schema")
19
- end
20
-
21
- schema.constants.first.tap do |x|
22
- expect(x).to be_instance_of(Expressir::Model::Constant)
23
- expect(x.remarks).to be_instance_of(Array)
24
- expect(x.remarks.count).to eq(2)
25
- expect(x.remarks[0]).to eq("schema scope - constant")
26
- expect(x.remarks[1]).to eq("universal scope - constant")
27
- end
28
-
29
- schema.types.first.tap do |x|
30
- expect(x).to be_instance_of(Expressir::Model::Type)
31
- expect(x.remarks).to be_instance_of(Array)
32
- expect(x.remarks.count).to eq(2)
33
- expect(x.remarks[0]).to eq("schema scope - type")
34
- expect(x.remarks[1]).to eq("universal scope - type")
35
-
36
- expect(x.type).to be_instance_of(Expressir::Model::Types::Enumeration)
37
- x.type.items.first.tap do |x|
38
- expect(x).to be_instance_of(Expressir::Model::EnumerationItem)
39
- expect(x.remarks).to be_instance_of(Array)
40
- expect(x.remarks.count).to eq(2)
41
- expect(x.remarks[0]).to eq("schema scope - enumeration item")
42
- expect(x.remarks[1]).to eq("universal scope - enumeration item")
43
- end
44
- end
45
-
46
- schema.entities.first.tap do |x|
47
- expect(x).to be_instance_of(Expressir::Model::Entity)
48
- expect(x.remarks).to be_instance_of(Array)
49
- expect(x.remarks.count).to eq(2)
50
- expect(x.remarks[0]).to eq("schema scope - entity")
51
- expect(x.remarks[1]).to eq("universal scope - entity")
52
- end
53
-
54
- schema.entities.first.explicit_attributes.first.tap do |x|
55
- expect(x).to be_instance_of(Expressir::Model::Attribute)
56
- expect(x.kind).to eq(Expressir::Model::Attribute::EXPLICIT)
57
- expect(x.remarks).to be_instance_of(Array)
58
- expect(x.remarks.count).to eq(3)
59
- expect(x.remarks[0]).to eq("entity scope - entity attribute")
60
- expect(x.remarks[1]).to eq("schema scope - entity attribute")
61
- expect(x.remarks[2]).to eq("universal scope - entity attribute")
62
- end
63
-
64
- schema.entities.first.derived_attributes.first.tap do |x|
65
- expect(x).to be_instance_of(Expressir::Model::Attribute)
66
- expect(x.kind).to eq(Expressir::Model::Attribute::DERIVED)
67
- expect(x.remarks).to be_instance_of(Array)
68
- expect(x.remarks.count).to eq(3)
69
- expect(x.remarks[0]).to eq("entity scope - entity derived attribute")
70
- expect(x.remarks[1]).to eq("schema scope - entity derived attribute")
71
- expect(x.remarks[2]).to eq("universal scope - entity derived attribute")
72
- end
73
-
74
- schema.entities.first.inverse_attributes.first.tap do |x|
75
- expect(x).to be_instance_of(Expressir::Model::Attribute)
76
- expect(x.kind).to eq(Expressir::Model::Attribute::INVERSE)
77
- expect(x.remarks).to be_instance_of(Array)
78
- expect(x.remarks.count).to eq(3)
79
- expect(x.remarks[0]).to eq("entity scope - entity inverse attribute")
80
- expect(x.remarks[1]).to eq("schema scope - entity inverse attribute")
81
- expect(x.remarks[2]).to eq("universal scope - entity inverse attribute")
82
- end
83
-
84
- schema.entities.first.unique.first.tap do |x|
85
- expect(x).to be_instance_of(Expressir::Model::Unique)
86
- expect(x.remarks).to be_instance_of(Array)
87
- expect(x.remarks.count).to eq(3)
88
- expect(x.remarks[0]).to eq("entity scope - entity unique")
89
- expect(x.remarks[1]).to eq("schema scope - entity unique")
90
- expect(x.remarks[2]).to eq("universal scope - entity unique")
91
- end
92
-
93
- schema.entities.first.where.first.tap do |x|
94
- expect(x).to be_instance_of(Expressir::Model::Where)
95
- expect(x.remarks).to be_instance_of(Array)
96
- expect(x.remarks.count).to eq(3)
97
- expect(x.remarks[0]).to eq("entity scope - entity where")
98
- expect(x.remarks[1]).to eq("schema scope - entity where")
99
- expect(x.remarks[2]).to eq("universal scope - entity where")
100
- end
101
-
102
- schema.subtype_constraints.first.tap do |x|
103
- expect(x).to be_instance_of(Expressir::Model::SubtypeConstraint)
104
- expect(x.remarks).to be_instance_of(Array)
105
- expect(x.remarks.count).to eq(2)
106
- expect(x.remarks[0]).to eq("schema scope - subtype constraint")
107
- expect(x.remarks[1]).to eq("universal scope - subtype constraint")
108
- end
109
-
110
- schema.functions.first.tap do |x|
111
- expect(x).to be_instance_of(Expressir::Model::Function)
112
- expect(x.remarks).to be_instance_of(Array)
113
- expect(x.remarks.count).to eq(2)
114
- expect(x.remarks[0]).to eq("schema scope - function")
115
- expect(x.remarks[1]).to eq("universal scope - function")
116
- end
117
-
118
- schema.functions.first.parameters.first.tap do |x|
119
- expect(x).to be_instance_of(Expressir::Model::Parameter)
120
- expect(x.remarks).to be_instance_of(Array)
121
- expect(x.remarks.count).to eq(3)
122
- expect(x.remarks[0]).to eq("function scope - function parameter")
123
- expect(x.remarks[1]).to eq("schema scope - function parameter")
124
- expect(x.remarks[2]).to eq("universal scope - function parameter")
125
- end
126
-
127
- schema.functions.first.types.first.tap do |x|
128
- expect(x).to be_instance_of(Expressir::Model::Type)
129
- expect(x.remarks).to be_instance_of(Array)
130
- expect(x.remarks.count).to eq(3)
131
- expect(x.remarks[0]).to eq("function scope - function type")
132
- expect(x.remarks[1]).to eq("schema scope - function type")
133
- expect(x.remarks[2]).to eq("universal scope - function type")
134
-
135
- expect(x.type).to be_instance_of(Expressir::Model::Types::Enumeration)
136
- x.type.items.first.tap do |x|
137
- expect(x).to be_instance_of(Expressir::Model::EnumerationItem)
138
- expect(x.remarks).to be_instance_of(Array)
139
- expect(x.remarks.count).to eq(3)
140
- expect(x.remarks[0]).to eq("function scope - function enumeration item")
141
- expect(x.remarks[1]).to eq("schema scope - function enumeration item")
142
- expect(x.remarks[2]).to eq("universal scope - function enumeration item")
143
- end
144
- end
145
-
146
- schema.functions.first.constants.first.tap do |x|
147
- expect(x).to be_instance_of(Expressir::Model::Constant)
148
- expect(x.remarks).to be_instance_of(Array)
149
- expect(x.remarks.count).to eq(3)
150
- expect(x.remarks[0]).to eq("function scope - function constant")
151
- expect(x.remarks[1]).to eq("schema scope - function constant")
152
- expect(x.remarks[2]).to eq("universal scope - function constant")
153
- end
154
-
155
- schema.functions.first.variables.first.tap do |x|
156
- expect(x).to be_instance_of(Expressir::Model::Variable)
157
- expect(x.remarks).to be_instance_of(Array)
158
- expect(x.remarks.count).to eq(3)
159
- expect(x.remarks[0]).to eq("function scope - function variable")
160
- expect(x.remarks[1]).to eq("schema scope - function variable")
161
- expect(x.remarks[2]).to eq("universal scope - function variable")
162
- end
163
-
164
- schema.functions.first.statements[0].tap do |x|
165
- expect(x).to be_instance_of(Expressir::Model::Statements::Alias)
166
- expect(x.remarks).to be_instance_of(Array)
167
- expect(x.remarks.count).to eq(1)
168
- expect(x.remarks[0]).to eq("function alias scope - function alias")
169
- end
170
-
171
- schema.functions.first.statements[1].tap do |x|
172
- expect(x).to be_instance_of(Expressir::Model::Statements::Repeat)
173
- expect(x.remarks).to be_instance_of(Array)
174
- expect(x.remarks.count).to eq(1)
175
- expect(x.remarks[0]).to eq("function repeat scope - function repeat")
176
- end
177
-
178
- schema.functions.first.statements[2].tap do |x|
179
- expect(x).to be_instance_of(Expressir::Model::Statements::Assignment)
180
- expect(x.expression).to be_instance_of(Expressir::Model::Expressions::QueryExpression)
181
- expect(x.expression.remarks).to be_instance_of(Array)
182
- expect(x.expression.remarks.count).to eq(1)
183
- expect(x.expression.remarks[0]).to eq("function query scope - function query")
184
- end
185
-
186
- schema.procedures.first.tap do |x|
187
- expect(x).to be_instance_of(Expressir::Model::Procedure)
188
- expect(x.remarks).to be_instance_of(Array)
189
- expect(x.remarks.count).to eq(2)
190
- expect(x.remarks[0]).to eq("schema scope - procedure")
191
- expect(x.remarks[1]).to eq("universal scope - procedure")
192
- end
193
-
194
- schema.procedures.first.parameters.first.tap do |x|
195
- expect(x).to be_instance_of(Expressir::Model::Parameter)
196
- expect(x.remarks).to be_instance_of(Array)
197
- expect(x.remarks.count).to eq(3)
198
- expect(x.remarks[0]).to eq("procedure scope - procedure parameter")
199
- expect(x.remarks[1]).to eq("schema scope - procedure parameter")
200
- expect(x.remarks[2]).to eq("universal scope - procedure parameter")
201
- end
202
-
203
- schema.procedures.first.types.first.tap do |x|
204
- expect(x).to be_instance_of(Expressir::Model::Type)
205
- expect(x.remarks).to be_instance_of(Array)
206
- expect(x.remarks.count).to eq(3)
207
- expect(x.remarks[0]).to eq("procedure scope - procedure type")
208
- expect(x.remarks[1]).to eq("schema scope - procedure type")
209
- expect(x.remarks[2]).to eq("universal scope - procedure type")
210
-
211
- expect(x.type).to be_instance_of(Expressir::Model::Types::Enumeration)
212
- x.type.items.first.tap do |x|
213
- expect(x).to be_instance_of(Expressir::Model::EnumerationItem)
214
- expect(x.remarks).to be_instance_of(Array)
215
- expect(x.remarks.count).to eq(3)
216
- expect(x.remarks[0]).to eq("procedure scope - procedure enumeration item")
217
- expect(x.remarks[1]).to eq("schema scope - procedure enumeration item")
218
- expect(x.remarks[2]).to eq("universal scope - procedure enumeration item")
219
- end
220
- end
221
-
222
- schema.procedures.first.constants.first.tap do |x|
223
- expect(x).to be_instance_of(Expressir::Model::Constant)
224
- expect(x.remarks).to be_instance_of(Array)
225
- expect(x.remarks.count).to eq(3)
226
- expect(x.remarks[0]).to eq("procedure scope - procedure constant")
227
- expect(x.remarks[1]).to eq("schema scope - procedure constant")
228
- expect(x.remarks[2]).to eq("universal scope - procedure constant")
229
- end
230
-
231
- schema.procedures.first.variables.first.tap do |x|
232
- expect(x).to be_instance_of(Expressir::Model::Variable)
233
- expect(x.remarks).to be_instance_of(Array)
234
- expect(x.remarks.count).to eq(3)
235
- expect(x.remarks[0]).to eq("procedure scope - procedure variable")
236
- expect(x.remarks[1]).to eq("schema scope - procedure variable")
237
- expect(x.remarks[2]).to eq("universal scope - procedure variable")
238
- end
239
-
240
- schema.procedures.first.statements[0].tap do |x|
241
- expect(x).to be_instance_of(Expressir::Model::Statements::Alias)
242
- expect(x.remarks).to be_instance_of(Array)
243
- expect(x.remarks.count).to eq(1)
244
- expect(x.remarks[0]).to eq("procedure alias scope - procedure alias")
245
- end
246
-
247
- schema.procedures.first.statements[1].tap do |x|
248
- expect(x).to be_instance_of(Expressir::Model::Statements::Repeat)
249
- expect(x.remarks).to be_instance_of(Array)
250
- expect(x.remarks.count).to eq(1)
251
- expect(x.remarks[0]).to eq("procedure repeat scope - procedure repeat")
252
- end
253
-
254
- schema.procedures.first.statements[2].tap do |x|
255
- expect(x).to be_instance_of(Expressir::Model::Statements::Assignment)
256
- expect(x.expression).to be_instance_of(Expressir::Model::Expressions::QueryExpression)
257
- expect(x.expression.remarks).to be_instance_of(Array)
258
- expect(x.expression.remarks.count).to eq(1)
259
- expect(x.expression.remarks[0]).to eq("procedure query scope - procedure query")
260
- end
261
-
262
- schema.rules.first.tap do |x|
263
- expect(x).to be_instance_of(Expressir::Model::Rule)
264
- expect(x.remarks).to be_instance_of(Array)
265
- expect(x.remarks.count).to eq(2)
266
- expect(x.remarks[0]).to eq("schema scope - rule")
267
- expect(x.remarks[1]).to eq("universal scope - rule")
268
- end
269
-
270
- schema.rules.first.types.first.tap do |x|
271
- expect(x).to be_instance_of(Expressir::Model::Type)
272
- expect(x.remarks).to be_instance_of(Array)
273
- expect(x.remarks.count).to eq(3)
274
- expect(x.remarks[0]).to eq("rule scope - rule type")
275
- expect(x.remarks[1]).to eq("schema scope - rule type")
276
- expect(x.remarks[2]).to eq("universal scope - rule type")
277
-
278
- expect(x.type).to be_instance_of(Expressir::Model::Types::Enumeration)
279
- x.type.items.first.tap do |x|
280
- expect(x).to be_instance_of(Expressir::Model::EnumerationItem)
281
- expect(x.remarks).to be_instance_of(Array)
282
- expect(x.remarks.count).to eq(3)
283
- expect(x.remarks[0]).to eq("rule scope - rule enumeration item")
284
- expect(x.remarks[1]).to eq("schema scope - rule enumeration item")
285
- expect(x.remarks[2]).to eq("universal scope - rule enumeration item")
286
- end
287
- end
288
-
289
- schema.rules.first.constants.first.tap do |x|
290
- expect(x).to be_instance_of(Expressir::Model::Constant)
291
- expect(x.remarks).to be_instance_of(Array)
292
- expect(x.remarks.count).to eq(3)
293
- expect(x.remarks[0]).to eq("rule scope - rule constant")
294
- expect(x.remarks[1]).to eq("schema scope - rule constant")
295
- expect(x.remarks[2]).to eq("universal scope - rule constant")
296
- end
297
-
298
- schema.rules.first.variables.first.tap do |x|
299
- expect(x).to be_instance_of(Expressir::Model::Variable)
300
- expect(x.remarks).to be_instance_of(Array)
301
- expect(x.remarks.count).to eq(3)
302
- expect(x.remarks[0]).to eq("rule scope - rule variable")
303
- expect(x.remarks[1]).to eq("schema scope - rule variable")
304
- expect(x.remarks[2]).to eq("universal scope - rule variable")
305
- end
306
-
307
- schema.rules.first.statements[0].tap do |x|
308
- expect(x).to be_instance_of(Expressir::Model::Statements::Alias)
309
- expect(x.remarks).to be_instance_of(Array)
310
- expect(x.remarks.count).to eq(1)
311
- expect(x.remarks[0]).to eq("rule alias scope - rule alias")
312
- end
313
-
314
- schema.rules.first.statements[1].tap do |x|
315
- expect(x).to be_instance_of(Expressir::Model::Statements::Repeat)
316
- expect(x.remarks).to be_instance_of(Array)
317
- expect(x.remarks.count).to eq(1)
318
- expect(x.remarks[0]).to eq("rule repeat scope - rule repeat")
319
- end
320
-
321
- schema.rules.first.statements[2].tap do |x|
322
- expect(x).to be_instance_of(Expressir::Model::Statements::Assignment)
323
- expect(x.expression).to be_instance_of(Expressir::Model::Expressions::QueryExpression)
324
- expect(x.expression.remarks).to be_instance_of(Array)
325
- expect(x.expression.remarks.count).to eq(1)
326
- expect(x.expression.remarks[0]).to eq("rule query scope - rule query")
327
- end
328
-
329
- schema.rules.first.where.first.tap do |x|
330
- expect(x).to be_instance_of(Expressir::Model::Where)
331
- expect(x.remarks).to be_instance_of(Array)
332
- expect(x.remarks.count).to eq(3)
333
- expect(x.remarks[0]).to eq("rule scope - rule where")
334
- expect(x.remarks[1]).to eq("schema scope - rule where")
335
- expect(x.remarks[2]).to eq("universal scope - rule where")
336
- end
337
- end
338
- end
339
-
340
- def sample_file
341
- @sample_file ||= Expressir.root_path.join(
342
- "original", "examples", "syntax", "remark.exp"
343
- )
344
- end
345
- end
1
+ require "spec_helper"
2
+ require "expressir/express_exp/parser"
3
+
4
+ RSpec.describe Expressir::ExpressExp::Parser do
5
+ describe ".from_file" do
6
+ it "build an instance from a file" do
7
+ repo = Expressir::ExpressExp::Parser.from_exp(sample_file)
8
+
9
+ schema = repo.schemas.first
10
+
11
+ schema.tap do |x|
12
+ expect(x).to be_instance_of(Expressir::Model::Schema)
13
+ expect(x.remarks).to be_instance_of(Array)
14
+ expect(x.remarks.count).to eq(5)
15
+ expect(x.remarks[0]).to eq("Any character within the EXPRESS character set may occur between the start and end of\nan embedded remark including the newline character; therefore, embedded remarks can span\nseveral physical lines.")
16
+ expect(x.remarks[1]).to eq("The tail remark is written at the end of a physical line.")
17
+ expect(x.remarks[2]).to eq("UTF8 test: Příliš žluťoučký kůň úpěl ďábelské ódy.")
18
+ expect(x.remarks[3]).to eq("universal scope - schema before")
19
+ expect(x.remarks[4]).to eq("universal scope - schema")
20
+ end
21
+
22
+ schema.constants.first.tap do |x|
23
+ expect(x).to be_instance_of(Expressir::Model::Constant)
24
+ expect(x.remarks).to be_instance_of(Array)
25
+ expect(x.remarks.count).to eq(2)
26
+ expect(x.remarks[0]).to eq("schema scope - constant")
27
+ expect(x.remarks[1]).to eq("universal scope - constant")
28
+ end
29
+
30
+ schema.types.first.tap do |x|
31
+ expect(x).to be_instance_of(Expressir::Model::Type)
32
+ expect(x.remarks).to be_instance_of(Array)
33
+ expect(x.remarks.count).to eq(2)
34
+ expect(x.remarks[0]).to eq("schema scope - type")
35
+ expect(x.remarks[1]).to eq("universal scope - type")
36
+
37
+ expect(x.type).to be_instance_of(Expressir::Model::Types::Enumeration)
38
+ x.type.items.first.tap do |x|
39
+ expect(x).to be_instance_of(Expressir::Model::EnumerationItem)
40
+ expect(x.remarks).to be_instance_of(Array)
41
+ expect(x.remarks.count).to eq(4)
42
+ expect(x.remarks[0]).to eq("schema scope - enumeration item")
43
+ expect(x.remarks[1]).to eq("schema scope - enumeration item, on the same level as the type")
44
+ expect(x.remarks[2]).to eq("universal scope - enumeration item")
45
+ expect(x.remarks[3]).to eq("universal scope - enumeration item, on the same level as the type")
46
+ end
47
+ end
48
+
49
+ schema.types.first.where.first.tap do |x|
50
+ expect(x).to be_instance_of(Expressir::Model::Where)
51
+ expect(x.remarks).to be_instance_of(Array)
52
+ expect(x.remarks.count).to eq(6)
53
+ expect(x.remarks[0]).to eq("type scope - type where")
54
+ expect(x.remarks[1]).to eq("type scope - type where, with prefix")
55
+ expect(x.remarks[2]).to eq("schema scope - type where")
56
+ expect(x.remarks[3]).to eq("schema scope - type where, with prefix")
57
+ expect(x.remarks[4]).to eq("universal scope - type where")
58
+ expect(x.remarks[5]).to eq("universal scope - type where, with prefix")
59
+ end
60
+
61
+ schema.types.first.informal_propositions.first.tap do |x|
62
+ expect(x).to be_instance_of(Expressir::Model::InformalProposition)
63
+ expect(x.remarks).to be_instance_of(Array)
64
+ expect(x.remarks.count).to eq(6)
65
+ expect(x.remarks[0]).to eq("type scope - type informal proposition")
66
+ expect(x.remarks[1]).to eq("type scope - type informal proposition, with prefix")
67
+ expect(x.remarks[2]).to eq("schema scope - type informal proposition")
68
+ expect(x.remarks[3]).to eq("schema scope - type informal proposition, with prefix")
69
+ expect(x.remarks[4]).to eq("universal scope - type informal proposition")
70
+ expect(x.remarks[5]).to eq("universal scope - type informal proposition, with prefix")
71
+ end
72
+
73
+ schema.entities.first.tap do |x|
74
+ expect(x).to be_instance_of(Expressir::Model::Entity)
75
+ expect(x.remarks).to be_instance_of(Array)
76
+ expect(x.remarks.count).to eq(2)
77
+ expect(x.remarks[0]).to eq("schema scope - entity")
78
+ expect(x.remarks[1]).to eq("universal scope - entity")
79
+ end
80
+
81
+ schema.entities.first.attributes.find{|x| x.kind == Expressir::Model::Attribute::EXPLICIT}.tap do |x|
82
+ expect(x).to be_instance_of(Expressir::Model::Attribute)
83
+ expect(x.kind).to eq(Expressir::Model::Attribute::EXPLICIT)
84
+ expect(x.remarks).to be_instance_of(Array)
85
+ expect(x.remarks.count).to eq(3)
86
+ expect(x.remarks[0]).to eq("entity scope - entity attribute")
87
+ expect(x.remarks[1]).to eq("schema scope - entity attribute")
88
+ expect(x.remarks[2]).to eq("universal scope - entity attribute")
89
+ end
90
+
91
+ schema.entities.first.attributes.find{|x| x.kind == Expressir::Model::Attribute::DERIVED}.tap do |x|
92
+ expect(x).to be_instance_of(Expressir::Model::Attribute)
93
+ expect(x.kind).to eq(Expressir::Model::Attribute::DERIVED)
94
+ expect(x.remarks).to be_instance_of(Array)
95
+ expect(x.remarks.count).to eq(3)
96
+ expect(x.remarks[0]).to eq("entity scope - entity derived attribute")
97
+ expect(x.remarks[1]).to eq("schema scope - entity derived attribute")
98
+ expect(x.remarks[2]).to eq("universal scope - entity derived attribute")
99
+ end
100
+
101
+ schema.entities.first.attributes.find{|x| x.kind == Expressir::Model::Attribute::INVERSE}.tap do |x|
102
+ expect(x).to be_instance_of(Expressir::Model::Attribute)
103
+ expect(x.kind).to eq(Expressir::Model::Attribute::INVERSE)
104
+ expect(x.remarks).to be_instance_of(Array)
105
+ expect(x.remarks.count).to eq(3)
106
+ expect(x.remarks[0]).to eq("entity scope - entity inverse attribute")
107
+ expect(x.remarks[1]).to eq("schema scope - entity inverse attribute")
108
+ expect(x.remarks[2]).to eq("universal scope - entity inverse attribute")
109
+ end
110
+
111
+ schema.entities.first.unique.first.tap do |x|
112
+ expect(x).to be_instance_of(Expressir::Model::Unique)
113
+ expect(x.remarks).to be_instance_of(Array)
114
+ expect(x.remarks.count).to eq(3)
115
+ expect(x.remarks[0]).to eq("entity scope - entity unique")
116
+ expect(x.remarks[1]).to eq("schema scope - entity unique")
117
+ expect(x.remarks[2]).to eq("universal scope - entity unique")
118
+ end
119
+
120
+ schema.entities.first.where.first.tap do |x|
121
+ expect(x).to be_instance_of(Expressir::Model::Where)
122
+ expect(x.remarks).to be_instance_of(Array)
123
+ expect(x.remarks.count).to eq(6)
124
+ expect(x.remarks[0]).to eq("entity scope - entity where")
125
+ expect(x.remarks[1]).to eq("entity scope - entity where, with prefix")
126
+ expect(x.remarks[2]).to eq("schema scope - entity where")
127
+ expect(x.remarks[3]).to eq("schema scope - entity where, with prefix")
128
+ expect(x.remarks[4]).to eq("universal scope - entity where")
129
+ expect(x.remarks[5]).to eq("universal scope - entity where, with prefix")
130
+ end
131
+
132
+ schema.entities.first.informal_propositions.first.tap do |x|
133
+ expect(x).to be_instance_of(Expressir::Model::InformalProposition)
134
+ expect(x.remarks).to be_instance_of(Array)
135
+ expect(x.remarks.count).to eq(6)
136
+ expect(x.remarks[0]).to eq("entity scope - entity informal proposition")
137
+ expect(x.remarks[1]).to eq("entity scope - entity informal proposition, with prefix")
138
+ expect(x.remarks[2]).to eq("schema scope - entity informal proposition")
139
+ expect(x.remarks[3]).to eq("schema scope - entity informal proposition, with prefix")
140
+ expect(x.remarks[4]).to eq("universal scope - entity informal proposition")
141
+ expect(x.remarks[5]).to eq("universal scope - entity informal proposition, with prefix")
142
+ end
143
+
144
+ schema.subtype_constraints.first.tap do |x|
145
+ expect(x).to be_instance_of(Expressir::Model::SubtypeConstraint)
146
+ expect(x.remarks).to be_instance_of(Array)
147
+ expect(x.remarks.count).to eq(2)
148
+ expect(x.remarks[0]).to eq("schema scope - subtype constraint")
149
+ expect(x.remarks[1]).to eq("universal scope - subtype constraint")
150
+ end
151
+
152
+ schema.functions.first.tap do |x|
153
+ expect(x).to be_instance_of(Expressir::Model::Function)
154
+ expect(x.remarks).to be_instance_of(Array)
155
+ expect(x.remarks.count).to eq(2)
156
+ expect(x.remarks[0]).to eq("schema scope - function")
157
+ expect(x.remarks[1]).to eq("universal scope - function")
158
+ end
159
+
160
+ schema.functions.first.parameters.first.tap do |x|
161
+ expect(x).to be_instance_of(Expressir::Model::Parameter)
162
+ expect(x.remarks).to be_instance_of(Array)
163
+ expect(x.remarks.count).to eq(3)
164
+ expect(x.remarks[0]).to eq("function scope - function parameter")
165
+ expect(x.remarks[1]).to eq("schema scope - function parameter")
166
+ expect(x.remarks[2]).to eq("universal scope - function parameter")
167
+ end
168
+
169
+ schema.functions.first.types.first.tap do |x|
170
+ expect(x).to be_instance_of(Expressir::Model::Type)
171
+ expect(x.remarks).to be_instance_of(Array)
172
+ expect(x.remarks.count).to eq(3)
173
+ expect(x.remarks[0]).to eq("function scope - function type")
174
+ expect(x.remarks[1]).to eq("schema scope - function type")
175
+ expect(x.remarks[2]).to eq("universal scope - function type")
176
+
177
+ expect(x.type).to be_instance_of(Expressir::Model::Types::Enumeration)
178
+ x.type.items.first.tap do |x|
179
+ expect(x).to be_instance_of(Expressir::Model::EnumerationItem)
180
+ expect(x.remarks).to be_instance_of(Array)
181
+ expect(x.remarks.count).to eq(6)
182
+ expect(x.remarks[0]).to eq("function scope - function enumeration item")
183
+ expect(x.remarks[1]).to eq("function scope - function enumeration item, on the same level as the type")
184
+ expect(x.remarks[2]).to eq("schema scope - function enumeration item")
185
+ expect(x.remarks[3]).to eq("schema scope - function enumeration item, on the same level as the type")
186
+ expect(x.remarks[4]).to eq("universal scope - function enumeration item")
187
+ expect(x.remarks[5]).to eq("universal scope - function enumeration item, on the same level as the type")
188
+ end
189
+ end
190
+
191
+ schema.functions.first.constants.first.tap do |x|
192
+ expect(x).to be_instance_of(Expressir::Model::Constant)
193
+ expect(x.remarks).to be_instance_of(Array)
194
+ expect(x.remarks.count).to eq(3)
195
+ expect(x.remarks[0]).to eq("function scope - function constant")
196
+ expect(x.remarks[1]).to eq("schema scope - function constant")
197
+ expect(x.remarks[2]).to eq("universal scope - function constant")
198
+ end
199
+
200
+ schema.functions.first.variables.first.tap do |x|
201
+ expect(x).to be_instance_of(Expressir::Model::Variable)
202
+ expect(x.remarks).to be_instance_of(Array)
203
+ expect(x.remarks.count).to eq(3)
204
+ expect(x.remarks[0]).to eq("function scope - function variable")
205
+ expect(x.remarks[1]).to eq("schema scope - function variable")
206
+ expect(x.remarks[2]).to eq("universal scope - function variable")
207
+ end
208
+
209
+ schema.functions.first.statements[0].tap do |x|
210
+ expect(x).to be_instance_of(Expressir::Model::Statements::Alias)
211
+ expect(x.remarks).to be_instance_of(Array)
212
+ expect(x.remarks.count).to eq(1)
213
+ expect(x.remarks[0]).to eq("function alias scope - function alias")
214
+ end
215
+
216
+ schema.functions.first.statements[1].tap do |x|
217
+ expect(x).to be_instance_of(Expressir::Model::Statements::Repeat)
218
+ expect(x.remarks).to be_instance_of(Array)
219
+ expect(x.remarks.count).to eq(1)
220
+ expect(x.remarks[0]).to eq("function repeat scope - function repeat")
221
+ end
222
+
223
+ schema.functions.first.statements[2].tap do |x|
224
+ expect(x).to be_instance_of(Expressir::Model::Statements::Assignment)
225
+ expect(x.expression).to be_instance_of(Expressir::Model::Expressions::QueryExpression)
226
+ expect(x.expression.remarks).to be_instance_of(Array)
227
+ expect(x.expression.remarks.count).to eq(1)
228
+ expect(x.expression.remarks[0]).to eq("function query scope - function query")
229
+ end
230
+
231
+ schema.procedures.first.tap do |x|
232
+ expect(x).to be_instance_of(Expressir::Model::Procedure)
233
+ expect(x.remarks).to be_instance_of(Array)
234
+ expect(x.remarks.count).to eq(2)
235
+ expect(x.remarks[0]).to eq("schema scope - procedure")
236
+ expect(x.remarks[1]).to eq("universal scope - procedure")
237
+ end
238
+
239
+ schema.procedures.first.parameters.first.tap do |x|
240
+ expect(x).to be_instance_of(Expressir::Model::Parameter)
241
+ expect(x.remarks).to be_instance_of(Array)
242
+ expect(x.remarks.count).to eq(3)
243
+ expect(x.remarks[0]).to eq("procedure scope - procedure parameter")
244
+ expect(x.remarks[1]).to eq("schema scope - procedure parameter")
245
+ expect(x.remarks[2]).to eq("universal scope - procedure parameter")
246
+ end
247
+
248
+ schema.procedures.first.types.first.tap do |x|
249
+ expect(x).to be_instance_of(Expressir::Model::Type)
250
+ expect(x.remarks).to be_instance_of(Array)
251
+ expect(x.remarks.count).to eq(3)
252
+ expect(x.remarks[0]).to eq("procedure scope - procedure type")
253
+ expect(x.remarks[1]).to eq("schema scope - procedure type")
254
+ expect(x.remarks[2]).to eq("universal scope - procedure type")
255
+
256
+ expect(x.type).to be_instance_of(Expressir::Model::Types::Enumeration)
257
+ x.type.items.first.tap do |x|
258
+ expect(x).to be_instance_of(Expressir::Model::EnumerationItem)
259
+ expect(x.remarks).to be_instance_of(Array)
260
+ expect(x.remarks.count).to eq(6)
261
+ expect(x.remarks[0]).to eq("procedure scope - procedure enumeration item")
262
+ expect(x.remarks[1]).to eq("procedure scope - procedure enumeration item, on the same level as the type")
263
+ expect(x.remarks[2]).to eq("schema scope - procedure enumeration item")
264
+ expect(x.remarks[3]).to eq("schema scope - procedure enumeration item, on the same level as the type")
265
+ expect(x.remarks[4]).to eq("universal scope - procedure enumeration item")
266
+ expect(x.remarks[5]).to eq("universal scope - procedure enumeration item, on the same level as the type")
267
+ end
268
+ end
269
+
270
+ schema.procedures.first.constants.first.tap do |x|
271
+ expect(x).to be_instance_of(Expressir::Model::Constant)
272
+ expect(x.remarks).to be_instance_of(Array)
273
+ expect(x.remarks.count).to eq(3)
274
+ expect(x.remarks[0]).to eq("procedure scope - procedure constant")
275
+ expect(x.remarks[1]).to eq("schema scope - procedure constant")
276
+ expect(x.remarks[2]).to eq("universal scope - procedure constant")
277
+ end
278
+
279
+ schema.procedures.first.variables.first.tap do |x|
280
+ expect(x).to be_instance_of(Expressir::Model::Variable)
281
+ expect(x.remarks).to be_instance_of(Array)
282
+ expect(x.remarks.count).to eq(3)
283
+ expect(x.remarks[0]).to eq("procedure scope - procedure variable")
284
+ expect(x.remarks[1]).to eq("schema scope - procedure variable")
285
+ expect(x.remarks[2]).to eq("universal scope - procedure variable")
286
+ end
287
+
288
+ schema.procedures.first.statements[0].tap do |x|
289
+ expect(x).to be_instance_of(Expressir::Model::Statements::Alias)
290
+ expect(x.remarks).to be_instance_of(Array)
291
+ expect(x.remarks.count).to eq(1)
292
+ expect(x.remarks[0]).to eq("procedure alias scope - procedure alias")
293
+ end
294
+
295
+ schema.procedures.first.statements[1].tap do |x|
296
+ expect(x).to be_instance_of(Expressir::Model::Statements::Repeat)
297
+ expect(x.remarks).to be_instance_of(Array)
298
+ expect(x.remarks.count).to eq(1)
299
+ expect(x.remarks[0]).to eq("procedure repeat scope - procedure repeat")
300
+ end
301
+
302
+ schema.procedures.first.statements[2].tap do |x|
303
+ expect(x).to be_instance_of(Expressir::Model::Statements::Assignment)
304
+ expect(x.expression).to be_instance_of(Expressir::Model::Expressions::QueryExpression)
305
+ expect(x.expression.remarks).to be_instance_of(Array)
306
+ expect(x.expression.remarks.count).to eq(1)
307
+ expect(x.expression.remarks[0]).to eq("procedure query scope - procedure query")
308
+ end
309
+
310
+ schema.rules.first.tap do |x|
311
+ expect(x).to be_instance_of(Expressir::Model::Rule)
312
+ expect(x.remarks).to be_instance_of(Array)
313
+ expect(x.remarks.count).to eq(2)
314
+ expect(x.remarks[0]).to eq("schema scope - rule")
315
+ expect(x.remarks[1]).to eq("universal scope - rule")
316
+ end
317
+
318
+ schema.rules.first.types.first.tap do |x|
319
+ expect(x).to be_instance_of(Expressir::Model::Type)
320
+ expect(x.remarks).to be_instance_of(Array)
321
+ expect(x.remarks.count).to eq(3)
322
+ expect(x.remarks[0]).to eq("rule scope - rule type")
323
+ expect(x.remarks[1]).to eq("schema scope - rule type")
324
+ expect(x.remarks[2]).to eq("universal scope - rule type")
325
+
326
+ expect(x.type).to be_instance_of(Expressir::Model::Types::Enumeration)
327
+ x.type.items.first.tap do |x|
328
+ expect(x).to be_instance_of(Expressir::Model::EnumerationItem)
329
+ expect(x.remarks).to be_instance_of(Array)
330
+ expect(x.remarks.count).to eq(6)
331
+ expect(x.remarks[0]).to eq("rule scope - rule enumeration item")
332
+ expect(x.remarks[1]).to eq("rule scope - rule enumeration item, on the same level as the type")
333
+ expect(x.remarks[2]).to eq("schema scope - rule enumeration item")
334
+ expect(x.remarks[3]).to eq("schema scope - rule enumeration item, on the same level as the type")
335
+ expect(x.remarks[4]).to eq("universal scope - rule enumeration item")
336
+ expect(x.remarks[5]).to eq("universal scope - rule enumeration item, on the same level as the type")
337
+ end
338
+ end
339
+
340
+ schema.rules.first.constants.first.tap do |x|
341
+ expect(x).to be_instance_of(Expressir::Model::Constant)
342
+ expect(x.remarks).to be_instance_of(Array)
343
+ expect(x.remarks.count).to eq(3)
344
+ expect(x.remarks[0]).to eq("rule scope - rule constant")
345
+ expect(x.remarks[1]).to eq("schema scope - rule constant")
346
+ expect(x.remarks[2]).to eq("universal scope - rule constant")
347
+ end
348
+
349
+ schema.rules.first.variables.first.tap do |x|
350
+ expect(x).to be_instance_of(Expressir::Model::Variable)
351
+ expect(x.remarks).to be_instance_of(Array)
352
+ expect(x.remarks.count).to eq(3)
353
+ expect(x.remarks[0]).to eq("rule scope - rule variable")
354
+ expect(x.remarks[1]).to eq("schema scope - rule variable")
355
+ expect(x.remarks[2]).to eq("universal scope - rule variable")
356
+ end
357
+
358
+ schema.rules.first.statements[0].tap do |x|
359
+ expect(x).to be_instance_of(Expressir::Model::Statements::Alias)
360
+ expect(x.remarks).to be_instance_of(Array)
361
+ expect(x.remarks.count).to eq(1)
362
+ expect(x.remarks[0]).to eq("rule alias scope - rule alias")
363
+ end
364
+
365
+ schema.rules.first.statements[1].tap do |x|
366
+ expect(x).to be_instance_of(Expressir::Model::Statements::Repeat)
367
+ expect(x.remarks).to be_instance_of(Array)
368
+ expect(x.remarks.count).to eq(1)
369
+ expect(x.remarks[0]).to eq("rule repeat scope - rule repeat")
370
+ end
371
+
372
+ schema.rules.first.statements[2].tap do |x|
373
+ expect(x).to be_instance_of(Expressir::Model::Statements::Assignment)
374
+ expect(x.expression).to be_instance_of(Expressir::Model::Expressions::QueryExpression)
375
+ expect(x.expression.remarks).to be_instance_of(Array)
376
+ expect(x.expression.remarks.count).to eq(1)
377
+ expect(x.expression.remarks[0]).to eq("rule query scope - rule query")
378
+ end
379
+
380
+ schema.rules.first.where.first.tap do |x|
381
+ expect(x).to be_instance_of(Expressir::Model::Where)
382
+ expect(x.remarks).to be_instance_of(Array)
383
+ expect(x.remarks.count).to eq(6)
384
+ expect(x.remarks[0]).to eq("rule scope - rule where")
385
+ expect(x.remarks[1]).to eq("rule scope - rule where, with prefix")
386
+ expect(x.remarks[2]).to eq("schema scope - rule where")
387
+ expect(x.remarks[3]).to eq("schema scope - rule where, with prefix")
388
+ expect(x.remarks[4]).to eq("universal scope - rule where")
389
+ expect(x.remarks[5]).to eq("universal scope - rule where, with prefix")
390
+ end
391
+
392
+ schema.rules.first.informal_propositions.first.tap do |x|
393
+ expect(x).to be_instance_of(Expressir::Model::InformalProposition)
394
+ expect(x.remarks).to be_instance_of(Array)
395
+ expect(x.remarks.count).to eq(6)
396
+ expect(x.remarks[0]).to eq("rule scope - rule informal proposition")
397
+ expect(x.remarks[1]).to eq("rule scope - rule informal proposition, with prefix")
398
+ expect(x.remarks[2]).to eq("schema scope - rule informal proposition")
399
+ expect(x.remarks[3]).to eq("schema scope - rule informal proposition, with prefix")
400
+ expect(x.remarks[4]).to eq("universal scope - rule informal proposition")
401
+ expect(x.remarks[5]).to eq("universal scope - rule informal proposition, with prefix")
402
+ end
403
+ end
404
+ end
405
+
406
+ def sample_file
407
+ @sample_file ||= Expressir.root_path.join(
408
+ "original", "examples", "syntax", "remark.exp"
409
+ )
410
+ end
411
+ end