expressir 0.2.26 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (207) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +50 -5
  3. data/.github/workflows/release.yml +8 -0
  4. data/.gitignore +2 -2
  5. data/.hound.yml +3 -0
  6. data/.rubocop.yml +6 -506
  7. data/.yardopts +11 -0
  8. data/Rakefile +3 -0
  9. data/demo.rb +5 -5
  10. data/exe/format +8 -8
  11. data/exe/format-test +11 -11
  12. data/expressir.gemspec +4 -2
  13. data/ext/express-parser/express_parser.cpp +4358 -2954
  14. data/ext/express-parser/extconf.rb +6 -4
  15. data/lib/expressir/cli.rb +0 -6
  16. data/lib/expressir/express/cache.rb +51 -0
  17. data/lib/expressir/{express_exp → express}/formatter.rb +304 -237
  18. data/lib/expressir/{express_exp → express}/hyperlink_formatter.rb +16 -2
  19. data/lib/expressir/{express_exp → express}/model_visitor.rb +2 -1
  20. data/lib/expressir/{express_exp → express}/parser.rb +19 -13
  21. data/lib/expressir/{express_exp → express}/resolve_references_model_visitor.rb +9 -7
  22. data/lib/expressir/express/schema_head_formatter.rb +23 -0
  23. data/lib/expressir/{express_exp → express}/visitor.rb +318 -270
  24. data/lib/expressir/model/cache.rb +6 -2
  25. data/lib/expressir/model/data_type.rb +9 -0
  26. data/lib/expressir/model/data_types/aggregate.rb +31 -0
  27. data/lib/expressir/model/data_types/array.rb +31 -0
  28. data/lib/expressir/model/data_types/bag.rb +25 -0
  29. data/lib/expressir/model/data_types/binary.rb +22 -0
  30. data/lib/expressir/model/data_types/boolean.rb +10 -0
  31. data/lib/expressir/model/data_types/enumeration.rb +25 -0
  32. data/lib/expressir/model/data_types/enumeration_item.rb +26 -0
  33. data/lib/expressir/model/data_types/generic.rb +26 -0
  34. data/lib/expressir/model/data_types/generic_entity.rb +26 -0
  35. data/lib/expressir/model/data_types/integer.rb +10 -0
  36. data/lib/expressir/model/data_types/list.rb +28 -0
  37. data/lib/expressir/model/data_types/logical.rb +10 -0
  38. data/lib/expressir/model/data_types/number.rb +10 -0
  39. data/lib/expressir/model/data_types/real.rb +19 -0
  40. data/lib/expressir/model/data_types/select.rb +28 -0
  41. data/lib/expressir/model/data_types/set.rb +25 -0
  42. data/lib/expressir/model/data_types/string.rb +22 -0
  43. data/lib/expressir/model/declaration.rb +9 -0
  44. data/lib/expressir/model/declarations/attribute.rb +47 -0
  45. data/lib/expressir/model/declarations/constant.rb +34 -0
  46. data/lib/expressir/model/declarations/entity.rb +53 -0
  47. data/lib/expressir/model/declarations/function.rb +67 -0
  48. data/lib/expressir/model/declarations/interface.rb +28 -0
  49. data/lib/expressir/model/declarations/interface_item.rb +23 -0
  50. data/lib/expressir/model/declarations/interfaced_item.rb +37 -0
  51. data/lib/expressir/model/declarations/parameter.rb +34 -0
  52. data/lib/expressir/model/declarations/procedure.rb +64 -0
  53. data/lib/expressir/model/declarations/remark_item.rb +21 -0
  54. data/lib/expressir/model/declarations/rule.rb +71 -0
  55. data/lib/expressir/model/declarations/schema.rb +117 -0
  56. data/lib/expressir/model/declarations/schema_version.rb +22 -0
  57. data/lib/expressir/model/declarations/schema_version_item.rb +22 -0
  58. data/lib/expressir/model/declarations/subtype_constraint.rb +40 -0
  59. data/lib/expressir/model/declarations/type.rb +45 -0
  60. data/lib/expressir/model/declarations/unique_rule.rb +31 -0
  61. data/lib/expressir/model/declarations/variable.rb +34 -0
  62. data/lib/expressir/model/declarations/where_rule.rb +31 -0
  63. data/lib/expressir/model/expression.rb +9 -0
  64. data/lib/expressir/model/expressions/aggregate_initializer.rb +7 -3
  65. data/lib/expressir/model/expressions/aggregate_initializer_item.rb +22 -0
  66. data/lib/expressir/model/expressions/binary_expression.rb +16 -5
  67. data/lib/expressir/model/expressions/entity_constructor.rb +9 -4
  68. data/lib/expressir/model/expressions/function_call.rb +22 -0
  69. data/lib/expressir/model/expressions/interval.rb +17 -6
  70. data/lib/expressir/model/expressions/query_expression.rb +11 -7
  71. data/lib/expressir/model/expressions/unary_expression.rb +9 -3
  72. data/lib/expressir/model/identifier.rb +26 -4
  73. data/lib/expressir/model/literal.rb +9 -0
  74. data/lib/expressir/model/literals/binary.rb +6 -2
  75. data/lib/expressir/model/literals/integer.rb +6 -2
  76. data/lib/expressir/model/literals/logical.rb +6 -2
  77. data/lib/expressir/model/literals/real.rb +6 -2
  78. data/lib/expressir/model/literals/string.rb +8 -3
  79. data/lib/expressir/model/model_element.rb +63 -37
  80. data/lib/expressir/model/reference.rb +9 -0
  81. data/lib/expressir/model/references/attribute_reference.rb +22 -0
  82. data/lib/expressir/model/references/group_reference.rb +22 -0
  83. data/lib/expressir/model/references/index_reference.rb +27 -0
  84. data/lib/expressir/model/references/simple_reference.rb +24 -0
  85. data/lib/expressir/model/repository.rb +6 -2
  86. data/lib/expressir/model/statement.rb +9 -0
  87. data/lib/expressir/model/statements/alias.rb +12 -8
  88. data/lib/expressir/model/statements/assignment.rb +8 -3
  89. data/lib/expressir/model/statements/case.rb +11 -5
  90. data/lib/expressir/model/statements/case_action.rb +8 -3
  91. data/lib/expressir/model/statements/compound.rb +7 -3
  92. data/lib/expressir/model/statements/escape.rb +3 -1
  93. data/lib/expressir/model/statements/if.rb +12 -6
  94. data/lib/expressir/model/statements/null.rb +3 -1
  95. data/lib/expressir/model/statements/procedure_call.rb +22 -0
  96. data/lib/expressir/model/statements/repeat.rb +20 -12
  97. data/lib/expressir/model/statements/return.rb +6 -2
  98. data/lib/expressir/model/statements/skip.rb +3 -1
  99. data/lib/expressir/model/supertype_expression.rb +9 -0
  100. data/lib/expressir/model/supertype_expressions/binary_supertype_expression.rb +29 -0
  101. data/lib/expressir/model/supertype_expressions/oneof_supertype_expression.rb +19 -0
  102. data/lib/expressir/model.rb +52 -43
  103. data/lib/expressir/version.rb +1 -1
  104. data/lib/expressir.rb +0 -1
  105. data/rakelib/cross-ruby.rake +1 -1
  106. data/spec/expressir/{express_exp → express}/cache_spec.rb +9 -9
  107. data/spec/expressir/express/formatter_spec.rb +127 -0
  108. data/spec/expressir/{express_exp → express}/parser_spec.rb +23 -23
  109. data/spec/expressir/model/model_element_spec.rb +153 -153
  110. data/{original/examples → spec}/syntax/multiple.exp +0 -0
  111. data/spec/syntax/multiple.yaml +198 -0
  112. data/{original/examples → spec}/syntax/multiple_formatted.exp +0 -0
  113. data/{original/examples → spec}/syntax/multiple_hyperlink_formatted.exp +0 -0
  114. data/{original/examples → spec}/syntax/multiple_schema_head_hyperlink_formatted.exp +0 -0
  115. data/{original/examples → spec}/syntax/remark.exp +0 -0
  116. data/{original/examples → spec}/syntax/remark.yaml +73 -73
  117. data/{original/examples → spec}/syntax/remark_formatted.exp +0 -0
  118. data/{original/examples → spec}/syntax/single.exp +1 -1
  119. data/spec/syntax/single.yaml +18 -0
  120. data/{original/examples → spec}/syntax/single_formatted.exp +1 -1
  121. data/{original/examples → spec}/syntax/single_formatted.yaml +9 -6
  122. data/{original/examples → spec}/syntax/syntax.exp +11 -11
  123. data/{original/examples → spec}/syntax/syntax.yaml +1100 -1111
  124. data/{original/examples → spec}/syntax/syntax_formatted.exp +11 -11
  125. data/{original/examples → spec}/syntax/syntax_hyperlink_formatted.exp +11 -11
  126. data/{original/examples → spec}/syntax/syntax_schema_head_formatted.exp +1 -1
  127. metadata +123 -116
  128. data/lib/expressir/express/aggregate_dimension.rb +0 -38
  129. data/lib/expressir/express/attribute.rb +0 -15
  130. data/lib/expressir/express/comment.rb +0 -7
  131. data/lib/expressir/express/defined_type.rb +0 -36
  132. data/lib/expressir/express/derived.rb +0 -65
  133. data/lib/expressir/express/derived_aggregate.rb +0 -43
  134. data/lib/expressir/express/entity.rb +0 -137
  135. data/lib/expressir/express/explicit.rb +0 -70
  136. data/lib/expressir/express/explicit_aggregate.rb +0 -46
  137. data/lib/expressir/express/explicit_or_derived.rb +0 -16
  138. data/lib/expressir/express/global_rule.rb +0 -44
  139. data/lib/expressir/express/interface_specification.rb +0 -51
  140. data/lib/expressir/express/interfaced_item.rb +0 -38
  141. data/lib/expressir/express/inverse.rb +0 -46
  142. data/lib/expressir/express/inverse_aggregate.rb +0 -37
  143. data/lib/expressir/express/model_element.rb +0 -7
  144. data/lib/expressir/express/named_type.rb +0 -19
  145. data/lib/expressir/express/remark.rb +0 -8
  146. data/lib/expressir/express/repository.rb +0 -306
  147. data/lib/expressir/express/schema_definition.rb +0 -96
  148. data/lib/expressir/express/subtype_constraint.rb +0 -14
  149. data/lib/expressir/express/type.rb +0 -26
  150. data/lib/expressir/express/type_aggregate.rb +0 -42
  151. data/lib/expressir/express/type_enum.rb +0 -29
  152. data/lib/expressir/express/type_parser.rb +0 -45
  153. data/lib/expressir/express/type_select.rb +0 -82
  154. data/lib/expressir/express/unique_rule.rb +0 -35
  155. data/lib/expressir/express/where_rule.rb +0 -32
  156. data/lib/expressir/express.rb +0 -11
  157. data/lib/expressir/express_exp/cache.rb +0 -48
  158. data/lib/expressir/express_exp/schema_head_formatter.rb +0 -9
  159. data/lib/expressir/express_parser.rb +0 -30
  160. data/lib/expressir/model/attribute.rb +0 -38
  161. data/lib/expressir/model/constant.rb +0 -28
  162. data/lib/expressir/model/entity.rb +0 -42
  163. data/lib/expressir/model/enumeration_item.rb +0 -22
  164. data/lib/expressir/model/expressions/aggregate_item.rb +0 -17
  165. data/lib/expressir/model/expressions/attribute_reference.rb +0 -17
  166. data/lib/expressir/model/expressions/call.rb +0 -17
  167. data/lib/expressir/model/expressions/group_reference.rb +0 -17
  168. data/lib/expressir/model/expressions/index_reference.rb +0 -19
  169. data/lib/expressir/model/expressions/simple_reference.rb +0 -19
  170. data/lib/expressir/model/function.rb +0 -57
  171. data/lib/expressir/model/interface.rb +0 -20
  172. data/lib/expressir/model/interface_item.rb +0 -15
  173. data/lib/expressir/model/interfaced_item.rb +0 -27
  174. data/lib/expressir/model/parameter.rb +0 -28
  175. data/lib/expressir/model/procedure.rb +0 -55
  176. data/lib/expressir/model/remark_item.rb +0 -15
  177. data/lib/expressir/model/rule.rb +0 -60
  178. data/lib/expressir/model/schema.rb +0 -100
  179. data/lib/expressir/model/statements/call.rb +0 -17
  180. data/lib/expressir/model/subtype_constraint.rb +0 -32
  181. data/lib/expressir/model/type.rb +0 -37
  182. data/lib/expressir/model/types/aggregate.rb +0 -28
  183. data/lib/expressir/model/types/array.rb +0 -23
  184. data/lib/expressir/model/types/bag.rb +0 -19
  185. data/lib/expressir/model/types/binary.rb +0 -17
  186. data/lib/expressir/model/types/boolean.rb +0 -8
  187. data/lib/expressir/model/types/enumeration.rb +0 -21
  188. data/lib/expressir/model/types/generic.rb +0 -24
  189. data/lib/expressir/model/types/generic_entity.rb +0 -24
  190. data/lib/expressir/model/types/integer.rb +0 -8
  191. data/lib/expressir/model/types/list.rb +0 -21
  192. data/lib/expressir/model/types/logical.rb +0 -8
  193. data/lib/expressir/model/types/number.rb +0 -8
  194. data/lib/expressir/model/types/real.rb +0 -15
  195. data/lib/expressir/model/types/select.rb +0 -23
  196. data/lib/expressir/model/types/set.rb +0 -19
  197. data/lib/expressir/model/types/string.rb +0 -17
  198. data/lib/expressir/model/unique.rb +0 -26
  199. data/lib/expressir/model/variable.rb +0 -28
  200. data/lib/expressir/model/where.rb +0 -26
  201. data/lib/expressir/parser/owl_parser.rb +0 -8
  202. data/lib/expressir/parser.rb +0 -6
  203. data/original/examples/syntax/multiple.yaml +0 -198
  204. data/original/examples/syntax/single.yaml +0 -15
  205. data/spec/acceptance/express_to_owl_spec.rb +0 -18
  206. data/spec/expressir/express/repository_spec.rb +0 -25
  207. data/spec/expressir/express_exp/formatter_spec.rb +0 -127
@@ -1,381 +1,397 @@
1
1
  ---
2
2
  _class: Expressir::Model::Repository
3
3
  schemas:
4
- - _class: Expressir::Model::Schema
5
- file: original/examples/syntax/syntax.exp
4
+ - _class: Expressir::Model::Declarations::Schema
5
+ file: spec/syntax/syntax.exp
6
6
  id: syntax_schema
7
7
  version:
8
- _class: Expressir::Model::Literals::String
9
- value: version
8
+ _class: Expressir::Model::Declarations::SchemaVersion
9
+ value: "{ISO standard 10303 part(41) object(1) version(8)}"
10
+ items:
11
+ - _class: Expressir::Model::Declarations::SchemaVersionItem
12
+ name: ISO
13
+ - _class: Expressir::Model::Declarations::SchemaVersionItem
14
+ name: standard
15
+ - _class: Expressir::Model::Declarations::SchemaVersionItem
16
+ value: '10303'
17
+ - _class: Expressir::Model::Declarations::SchemaVersionItem
18
+ name: part
19
+ value: '41'
20
+ - _class: Expressir::Model::Declarations::SchemaVersionItem
21
+ name: object
22
+ value: '1'
23
+ - _class: Expressir::Model::Declarations::SchemaVersionItem
24
+ name: version
25
+ value: '8'
10
26
  interfaces:
11
- - _class: Expressir::Model::Interface
27
+ - _class: Expressir::Model::Declarations::Interface
12
28
  kind: :USE
13
29
  schema:
14
- _class: Expressir::Model::Expressions::SimpleReference
30
+ _class: Expressir::Model::References::SimpleReference
15
31
  id: contract_schema
16
- - _class: Expressir::Model::Interface
32
+ - _class: Expressir::Model::Declarations::Interface
17
33
  kind: :USE
18
34
  schema:
19
- _class: Expressir::Model::Expressions::SimpleReference
35
+ _class: Expressir::Model::References::SimpleReference
20
36
  id: contract_schema
21
37
  items:
22
- - _class: Expressir::Model::InterfaceItem
38
+ - _class: Expressir::Model::Declarations::InterfaceItem
23
39
  ref:
24
- _class: Expressir::Model::Expressions::SimpleReference
40
+ _class: Expressir::Model::References::SimpleReference
25
41
  id: contract
26
- - _class: Expressir::Model::Interface
42
+ - _class: Expressir::Model::Declarations::Interface
27
43
  kind: :USE
28
44
  schema:
29
- _class: Expressir::Model::Expressions::SimpleReference
45
+ _class: Expressir::Model::References::SimpleReference
30
46
  id: contract_schema
31
47
  items:
32
- - _class: Expressir::Model::InterfaceItem
48
+ - _class: Expressir::Model::Declarations::InterfaceItem
33
49
  ref:
34
- _class: Expressir::Model::Expressions::SimpleReference
50
+ _class: Expressir::Model::References::SimpleReference
35
51
  id: contract
36
- - _class: Expressir::Model::InterfaceItem
52
+ - _class: Expressir::Model::Declarations::InterfaceItem
37
53
  ref:
38
- _class: Expressir::Model::Expressions::SimpleReference
54
+ _class: Expressir::Model::References::SimpleReference
39
55
  id: contract2
40
- - _class: Expressir::Model::Interface
56
+ - _class: Expressir::Model::Declarations::Interface
41
57
  kind: :USE
42
58
  schema:
43
- _class: Expressir::Model::Expressions::SimpleReference
59
+ _class: Expressir::Model::References::SimpleReference
44
60
  id: contract_schema
45
61
  items:
46
- - _class: Expressir::Model::InterfaceItem
62
+ - _class: Expressir::Model::Declarations::InterfaceItem
47
63
  ref:
48
- _class: Expressir::Model::Expressions::SimpleReference
64
+ _class: Expressir::Model::References::SimpleReference
49
65
  id: contract
50
66
  id: contract2
51
- - _class: Expressir::Model::Interface
67
+ - _class: Expressir::Model::Declarations::Interface
52
68
  kind: :REFERENCE
53
69
  schema:
54
- _class: Expressir::Model::Expressions::SimpleReference
70
+ _class: Expressir::Model::References::SimpleReference
55
71
  id: contract_schema
56
- - _class: Expressir::Model::Interface
72
+ - _class: Expressir::Model::Declarations::Interface
57
73
  kind: :REFERENCE
58
74
  schema:
59
- _class: Expressir::Model::Expressions::SimpleReference
75
+ _class: Expressir::Model::References::SimpleReference
60
76
  id: contract_schema
61
77
  items:
62
- - _class: Expressir::Model::InterfaceItem
78
+ - _class: Expressir::Model::Declarations::InterfaceItem
63
79
  ref:
64
- _class: Expressir::Model::Expressions::SimpleReference
80
+ _class: Expressir::Model::References::SimpleReference
65
81
  id: contract
66
- - _class: Expressir::Model::Interface
82
+ - _class: Expressir::Model::Declarations::Interface
67
83
  kind: :REFERENCE
68
84
  schema:
69
- _class: Expressir::Model::Expressions::SimpleReference
85
+ _class: Expressir::Model::References::SimpleReference
70
86
  id: contract_schema
71
87
  items:
72
- - _class: Expressir::Model::InterfaceItem
88
+ - _class: Expressir::Model::Declarations::InterfaceItem
73
89
  ref:
74
- _class: Expressir::Model::Expressions::SimpleReference
90
+ _class: Expressir::Model::References::SimpleReference
75
91
  id: contract
76
- - _class: Expressir::Model::InterfaceItem
92
+ - _class: Expressir::Model::Declarations::InterfaceItem
77
93
  ref:
78
- _class: Expressir::Model::Expressions::SimpleReference
94
+ _class: Expressir::Model::References::SimpleReference
79
95
  id: contract2
80
- - _class: Expressir::Model::Interface
96
+ - _class: Expressir::Model::Declarations::Interface
81
97
  kind: :REFERENCE
82
98
  schema:
83
- _class: Expressir::Model::Expressions::SimpleReference
99
+ _class: Expressir::Model::References::SimpleReference
84
100
  id: contract_schema
85
101
  items:
86
- - _class: Expressir::Model::InterfaceItem
102
+ - _class: Expressir::Model::Declarations::InterfaceItem
87
103
  ref:
88
- _class: Expressir::Model::Expressions::SimpleReference
104
+ _class: Expressir::Model::References::SimpleReference
89
105
  id: contract
90
106
  id: contract2
91
107
  constants:
92
- - _class: Expressir::Model::Constant
108
+ - _class: Expressir::Model::Declarations::Constant
93
109
  id: empty_constant
94
110
  type:
95
- _class: Expressir::Model::Types::Boolean
111
+ _class: Expressir::Model::DataTypes::Boolean
96
112
  expression:
97
113
  _class: Expressir::Model::Literals::Logical
98
114
  value: :TRUE
99
115
  types:
100
- - _class: Expressir::Model::Type
116
+ - _class: Expressir::Model::Declarations::Type
101
117
  id: empty_type
102
- type:
103
- _class: Expressir::Model::Types::Boolean
104
- - _class: Expressir::Model::Type
118
+ underlying_type:
119
+ _class: Expressir::Model::DataTypes::Boolean
120
+ - _class: Expressir::Model::Declarations::Type
105
121
  id: where_type
106
- type:
107
- _class: Expressir::Model::Types::Boolean
108
- where:
109
- - _class: Expressir::Model::Where
122
+ underlying_type:
123
+ _class: Expressir::Model::DataTypes::Boolean
124
+ where_rules:
125
+ - _class: Expressir::Model::Declarations::WhereRule
110
126
  expression:
111
127
  _class: Expressir::Model::Literals::Logical
112
128
  value: :TRUE
113
- - _class: Expressir::Model::Type
129
+ - _class: Expressir::Model::Declarations::Type
114
130
  id: where_label_type
115
- type:
116
- _class: Expressir::Model::Types::Boolean
117
- where:
118
- - _class: Expressir::Model::Where
131
+ underlying_type:
132
+ _class: Expressir::Model::DataTypes::Boolean
133
+ where_rules:
134
+ - _class: Expressir::Model::Declarations::WhereRule
119
135
  id: WR1
120
136
  expression:
121
137
  _class: Expressir::Model::Literals::Logical
122
138
  value: :TRUE
123
139
  entities:
124
- - _class: Expressir::Model::Entity
140
+ - _class: Expressir::Model::Declarations::Entity
125
141
  id: empty_entity
126
- - _class: Expressir::Model::Entity
142
+ - _class: Expressir::Model::Declarations::Entity
127
143
  id: abstract_entity
128
144
  abstract: true
129
- - _class: Expressir::Model::Entity
145
+ - _class: Expressir::Model::Declarations::Entity
130
146
  id: abstract_supertype_entity
131
147
  abstract: true
132
- - _class: Expressir::Model::Entity
148
+ - _class: Expressir::Model::Declarations::Entity
133
149
  id: abstract_supertype_constraint_entity
134
150
  abstract: true
135
151
  supertype_expression:
136
- _class: Expressir::Model::Expressions::SimpleReference
152
+ _class: Expressir::Model::References::SimpleReference
137
153
  id: empty_entity
138
154
  base_path: syntax_schema.empty_entity
139
- - _class: Expressir::Model::Entity
155
+ - _class: Expressir::Model::Declarations::Entity
140
156
  id: supertype_constraint_entity
141
157
  supertype_expression:
142
- _class: Expressir::Model::Expressions::SimpleReference
158
+ _class: Expressir::Model::References::SimpleReference
143
159
  id: empty_entity
144
160
  base_path: syntax_schema.empty_entity
145
- - _class: Expressir::Model::Entity
161
+ - _class: Expressir::Model::Declarations::Entity
146
162
  id: subtype_entity
147
163
  subtype_of:
148
- - _class: Expressir::Model::Expressions::SimpleReference
164
+ - _class: Expressir::Model::References::SimpleReference
149
165
  id: empty_entity
150
166
  base_path: syntax_schema.empty_entity
151
- - _class: Expressir::Model::Entity
167
+ - _class: Expressir::Model::Declarations::Entity
152
168
  id: supertype_constraint_subtype_entity
153
169
  supertype_expression:
154
- _class: Expressir::Model::Expressions::SimpleReference
170
+ _class: Expressir::Model::References::SimpleReference
155
171
  id: empty_entity
156
172
  base_path: syntax_schema.empty_entity
157
173
  subtype_of:
158
- - _class: Expressir::Model::Expressions::SimpleReference
174
+ - _class: Expressir::Model::References::SimpleReference
159
175
  id: empty_entity
160
176
  base_path: syntax_schema.empty_entity
161
- - _class: Expressir::Model::Entity
177
+ - _class: Expressir::Model::Declarations::Entity
162
178
  id: attribute_entity
163
179
  attributes:
164
- - _class: Expressir::Model::Attribute
180
+ - _class: Expressir::Model::Declarations::Attribute
165
181
  id: test
166
182
  kind: :EXPLICIT
167
183
  type:
168
- _class: Expressir::Model::Types::Boolean
169
- - _class: Expressir::Model::Entity
184
+ _class: Expressir::Model::DataTypes::Boolean
185
+ - _class: Expressir::Model::Declarations::Entity
170
186
  id: attribute_optional_entity
171
187
  attributes:
172
- - _class: Expressir::Model::Attribute
188
+ - _class: Expressir::Model::Declarations::Attribute
173
189
  id: test
174
190
  kind: :EXPLICIT
175
191
  optional: true
176
192
  type:
177
- _class: Expressir::Model::Types::Boolean
178
- - _class: Expressir::Model::Entity
193
+ _class: Expressir::Model::DataTypes::Boolean
194
+ - _class: Expressir::Model::Declarations::Entity
179
195
  id: attribute_multiple_entity
180
196
  attributes:
181
- - _class: Expressir::Model::Attribute
197
+ - _class: Expressir::Model::Declarations::Attribute
182
198
  id: test
183
199
  kind: :EXPLICIT
184
200
  type:
185
- _class: Expressir::Model::Types::Boolean
186
- - _class: Expressir::Model::Attribute
201
+ _class: Expressir::Model::DataTypes::Boolean
202
+ - _class: Expressir::Model::Declarations::Attribute
187
203
  id: test2
188
204
  kind: :EXPLICIT
189
205
  type:
190
- _class: Expressir::Model::Types::Boolean
191
- - _class: Expressir::Model::Entity
206
+ _class: Expressir::Model::DataTypes::Boolean
207
+ - _class: Expressir::Model::Declarations::Entity
192
208
  id: attribute_multiple_shorthand_entity
193
209
  attributes:
194
- - _class: Expressir::Model::Attribute
210
+ - _class: Expressir::Model::Declarations::Attribute
195
211
  id: test
196
212
  kind: :EXPLICIT
197
213
  type:
198
- _class: Expressir::Model::Types::Boolean
199
- - _class: Expressir::Model::Attribute
214
+ _class: Expressir::Model::DataTypes::Boolean
215
+ - _class: Expressir::Model::Declarations::Attribute
200
216
  id: test2
201
217
  kind: :EXPLICIT
202
218
  type:
203
- _class: Expressir::Model::Types::Boolean
204
- - _class: Expressir::Model::Entity
219
+ _class: Expressir::Model::DataTypes::Boolean
220
+ - _class: Expressir::Model::Declarations::Entity
205
221
  id: attribute_redeclared_entity
206
222
  subtype_of:
207
- - _class: Expressir::Model::Expressions::SimpleReference
223
+ - _class: Expressir::Model::References::SimpleReference
208
224
  id: attribute_entity
209
225
  base_path: syntax_schema.attribute_entity
210
226
  attributes:
211
- - _class: Expressir::Model::Attribute
227
+ - _class: Expressir::Model::Declarations::Attribute
212
228
  kind: :EXPLICIT
213
229
  supertype_attribute:
214
- _class: Expressir::Model::Expressions::AttributeReference
230
+ _class: Expressir::Model::References::AttributeReference
215
231
  ref:
216
- _class: Expressir::Model::Expressions::GroupReference
232
+ _class: Expressir::Model::References::GroupReference
217
233
  ref:
218
- _class: Expressir::Model::Expressions::SimpleReference
234
+ _class: Expressir::Model::References::SimpleReference
219
235
  id: SELF
220
236
  entity:
221
- _class: Expressir::Model::Expressions::SimpleReference
237
+ _class: Expressir::Model::References::SimpleReference
222
238
  id: attribute_entity
223
239
  base_path: syntax_schema.attribute_entity
224
240
  attribute:
225
- _class: Expressir::Model::Expressions::SimpleReference
241
+ _class: Expressir::Model::References::SimpleReference
226
242
  id: test
227
243
  type:
228
- _class: Expressir::Model::Types::Boolean
229
- - _class: Expressir::Model::Entity
244
+ _class: Expressir::Model::DataTypes::Boolean
245
+ - _class: Expressir::Model::Declarations::Entity
230
246
  id: attribute_redeclared_renamed_entity
231
247
  subtype_of:
232
- - _class: Expressir::Model::Expressions::SimpleReference
248
+ - _class: Expressir::Model::References::SimpleReference
233
249
  id: attribute_entity
234
250
  base_path: syntax_schema.attribute_entity
235
251
  attributes:
236
- - _class: Expressir::Model::Attribute
252
+ - _class: Expressir::Model::Declarations::Attribute
237
253
  id: test2
238
254
  kind: :EXPLICIT
239
255
  supertype_attribute:
240
- _class: Expressir::Model::Expressions::AttributeReference
256
+ _class: Expressir::Model::References::AttributeReference
241
257
  ref:
242
- _class: Expressir::Model::Expressions::GroupReference
258
+ _class: Expressir::Model::References::GroupReference
243
259
  ref:
244
- _class: Expressir::Model::Expressions::SimpleReference
260
+ _class: Expressir::Model::References::SimpleReference
245
261
  id: SELF
246
262
  entity:
247
- _class: Expressir::Model::Expressions::SimpleReference
263
+ _class: Expressir::Model::References::SimpleReference
248
264
  id: attribute_entity
249
265
  base_path: syntax_schema.attribute_entity
250
266
  attribute:
251
- _class: Expressir::Model::Expressions::SimpleReference
267
+ _class: Expressir::Model::References::SimpleReference
252
268
  id: test
253
269
  type:
254
- _class: Expressir::Model::Types::Boolean
255
- - _class: Expressir::Model::Entity
270
+ _class: Expressir::Model::DataTypes::Boolean
271
+ - _class: Expressir::Model::Declarations::Entity
256
272
  id: derived_attribute_entity
257
273
  attributes:
258
- - _class: Expressir::Model::Attribute
274
+ - _class: Expressir::Model::Declarations::Attribute
259
275
  id: test
260
276
  kind: :DERIVED
261
277
  type:
262
- _class: Expressir::Model::Types::Boolean
278
+ _class: Expressir::Model::DataTypes::Boolean
263
279
  expression:
264
280
  _class: Expressir::Model::Literals::Logical
265
281
  value: :TRUE
266
- - _class: Expressir::Model::Entity
282
+ - _class: Expressir::Model::Declarations::Entity
267
283
  id: derived_attribute_redeclared_entity
268
284
  subtype_of:
269
- - _class: Expressir::Model::Expressions::SimpleReference
285
+ - _class: Expressir::Model::References::SimpleReference
270
286
  id: attribute_entity
271
287
  base_path: syntax_schema.attribute_entity
272
288
  attributes:
273
- - _class: Expressir::Model::Attribute
289
+ - _class: Expressir::Model::Declarations::Attribute
274
290
  kind: :DERIVED
275
291
  supertype_attribute:
276
- _class: Expressir::Model::Expressions::AttributeReference
292
+ _class: Expressir::Model::References::AttributeReference
277
293
  ref:
278
- _class: Expressir::Model::Expressions::GroupReference
294
+ _class: Expressir::Model::References::GroupReference
279
295
  ref:
280
- _class: Expressir::Model::Expressions::SimpleReference
296
+ _class: Expressir::Model::References::SimpleReference
281
297
  id: SELF
282
298
  entity:
283
- _class: Expressir::Model::Expressions::SimpleReference
299
+ _class: Expressir::Model::References::SimpleReference
284
300
  id: attribute_entity
285
301
  base_path: syntax_schema.attribute_entity
286
302
  attribute:
287
- _class: Expressir::Model::Expressions::SimpleReference
303
+ _class: Expressir::Model::References::SimpleReference
288
304
  id: test
289
305
  type:
290
- _class: Expressir::Model::Types::Boolean
306
+ _class: Expressir::Model::DataTypes::Boolean
291
307
  expression:
292
308
  _class: Expressir::Model::Literals::Logical
293
309
  value: :TRUE
294
- - _class: Expressir::Model::Entity
310
+ - _class: Expressir::Model::Declarations::Entity
295
311
  id: derived_attribute_redeclared_renamed_entity
296
312
  subtype_of:
297
- - _class: Expressir::Model::Expressions::SimpleReference
313
+ - _class: Expressir::Model::References::SimpleReference
298
314
  id: attribute_entity
299
315
  base_path: syntax_schema.attribute_entity
300
316
  attributes:
301
- - _class: Expressir::Model::Attribute
317
+ - _class: Expressir::Model::Declarations::Attribute
302
318
  id: test2
303
319
  kind: :DERIVED
304
320
  supertype_attribute:
305
- _class: Expressir::Model::Expressions::AttributeReference
321
+ _class: Expressir::Model::References::AttributeReference
306
322
  ref:
307
- _class: Expressir::Model::Expressions::GroupReference
323
+ _class: Expressir::Model::References::GroupReference
308
324
  ref:
309
- _class: Expressir::Model::Expressions::SimpleReference
325
+ _class: Expressir::Model::References::SimpleReference
310
326
  id: SELF
311
327
  entity:
312
- _class: Expressir::Model::Expressions::SimpleReference
328
+ _class: Expressir::Model::References::SimpleReference
313
329
  id: attribute_entity
314
330
  base_path: syntax_schema.attribute_entity
315
331
  attribute:
316
- _class: Expressir::Model::Expressions::SimpleReference
332
+ _class: Expressir::Model::References::SimpleReference
317
333
  id: test
318
334
  type:
319
- _class: Expressir::Model::Types::Boolean
335
+ _class: Expressir::Model::DataTypes::Boolean
320
336
  expression:
321
337
  _class: Expressir::Model::Literals::Logical
322
338
  value: :TRUE
323
- - _class: Expressir::Model::Entity
339
+ - _class: Expressir::Model::Declarations::Entity
324
340
  id: inverse_attribute_entity
325
341
  attributes:
326
- - _class: Expressir::Model::Attribute
342
+ - _class: Expressir::Model::Declarations::Attribute
327
343
  id: test
328
344
  kind: :INVERSE
329
345
  type:
330
- _class: Expressir::Model::Expressions::SimpleReference
346
+ _class: Expressir::Model::References::SimpleReference
331
347
  id: attribute_entity
332
348
  base_path: syntax_schema.attribute_entity
333
349
  expression:
334
- _class: Expressir::Model::Expressions::SimpleReference
350
+ _class: Expressir::Model::References::SimpleReference
335
351
  id: test
336
352
  base_path: syntax_schema.inverse_attribute_entity.test
337
- - _class: Expressir::Model::Entity
353
+ - _class: Expressir::Model::Declarations::Entity
338
354
  id: inverse_attribute_entity_entity
339
355
  attributes:
340
- - _class: Expressir::Model::Attribute
356
+ - _class: Expressir::Model::Declarations::Attribute
341
357
  id: test
342
358
  kind: :INVERSE
343
359
  type:
344
- _class: Expressir::Model::Expressions::SimpleReference
360
+ _class: Expressir::Model::References::SimpleReference
345
361
  id: attribute_entity
346
362
  base_path: syntax_schema.attribute_entity
347
363
  expression:
348
- _class: Expressir::Model::Expressions::AttributeReference
364
+ _class: Expressir::Model::References::AttributeReference
349
365
  ref:
350
- _class: Expressir::Model::Expressions::SimpleReference
366
+ _class: Expressir::Model::References::SimpleReference
351
367
  id: attribute_entity
352
368
  attribute:
353
- _class: Expressir::Model::Expressions::SimpleReference
369
+ _class: Expressir::Model::References::SimpleReference
354
370
  id: test
355
- - _class: Expressir::Model::Entity
371
+ - _class: Expressir::Model::Declarations::Entity
356
372
  id: inverse_attribute_set_entity
357
373
  attributes:
358
- - _class: Expressir::Model::Attribute
374
+ - _class: Expressir::Model::Declarations::Attribute
359
375
  id: test
360
376
  kind: :INVERSE
361
377
  type:
362
- _class: Expressir::Model::Types::Set
378
+ _class: Expressir::Model::DataTypes::Set
363
379
  base_type:
364
- _class: Expressir::Model::Expressions::SimpleReference
380
+ _class: Expressir::Model::References::SimpleReference
365
381
  id: attribute_entity
366
382
  base_path: syntax_schema.attribute_entity
367
383
  expression:
368
- _class: Expressir::Model::Expressions::SimpleReference
384
+ _class: Expressir::Model::References::SimpleReference
369
385
  id: test
370
386
  base_path: syntax_schema.inverse_attribute_set_entity.test
371
- - _class: Expressir::Model::Entity
387
+ - _class: Expressir::Model::Declarations::Entity
372
388
  id: inverse_attribute_set_bound_entity
373
389
  attributes:
374
- - _class: Expressir::Model::Attribute
390
+ - _class: Expressir::Model::Declarations::Attribute
375
391
  id: test
376
392
  kind: :INVERSE
377
393
  type:
378
- _class: Expressir::Model::Types::Set
394
+ _class: Expressir::Model::DataTypes::Set
379
395
  bound1:
380
396
  _class: Expressir::Model::Literals::Integer
381
397
  value: '1'
@@ -383,37 +399,37 @@ schemas:
383
399
  _class: Expressir::Model::Literals::Integer
384
400
  value: '9'
385
401
  base_type:
386
- _class: Expressir::Model::Expressions::SimpleReference
402
+ _class: Expressir::Model::References::SimpleReference
387
403
  id: attribute_entity
388
404
  base_path: syntax_schema.attribute_entity
389
405
  expression:
390
- _class: Expressir::Model::Expressions::SimpleReference
406
+ _class: Expressir::Model::References::SimpleReference
391
407
  id: test
392
408
  base_path: syntax_schema.inverse_attribute_set_bound_entity.test
393
- - _class: Expressir::Model::Entity
409
+ - _class: Expressir::Model::Declarations::Entity
394
410
  id: inverse_attribute_bag_entity
395
411
  attributes:
396
- - _class: Expressir::Model::Attribute
412
+ - _class: Expressir::Model::Declarations::Attribute
397
413
  id: test
398
414
  kind: :INVERSE
399
415
  type:
400
- _class: Expressir::Model::Types::Bag
416
+ _class: Expressir::Model::DataTypes::Bag
401
417
  base_type:
402
- _class: Expressir::Model::Expressions::SimpleReference
418
+ _class: Expressir::Model::References::SimpleReference
403
419
  id: attribute_entity
404
420
  base_path: syntax_schema.attribute_entity
405
421
  expression:
406
- _class: Expressir::Model::Expressions::SimpleReference
422
+ _class: Expressir::Model::References::SimpleReference
407
423
  id: test
408
424
  base_path: syntax_schema.inverse_attribute_bag_entity.test
409
- - _class: Expressir::Model::Entity
425
+ - _class: Expressir::Model::Declarations::Entity
410
426
  id: inverse_attribute_bag_bound_entity
411
427
  attributes:
412
- - _class: Expressir::Model::Attribute
428
+ - _class: Expressir::Model::Declarations::Attribute
413
429
  id: test
414
430
  kind: :INVERSE
415
431
  type:
416
- _class: Expressir::Model::Types::Bag
432
+ _class: Expressir::Model::DataTypes::Bag
417
433
  bound1:
418
434
  _class: Expressir::Model::Literals::Integer
419
435
  value: '1'
@@ -421,1127 +437,1100 @@ schemas:
421
437
  _class: Expressir::Model::Literals::Integer
422
438
  value: '9'
423
439
  base_type:
424
- _class: Expressir::Model::Expressions::SimpleReference
440
+ _class: Expressir::Model::References::SimpleReference
425
441
  id: attribute_entity
426
442
  base_path: syntax_schema.attribute_entity
427
443
  expression:
428
- _class: Expressir::Model::Expressions::SimpleReference
444
+ _class: Expressir::Model::References::SimpleReference
429
445
  id: test
430
446
  base_path: syntax_schema.inverse_attribute_bag_bound_entity.test
431
- - _class: Expressir::Model::Entity
447
+ - _class: Expressir::Model::Declarations::Entity
432
448
  id: inverse_attribute_redeclared_entity
433
449
  subtype_of:
434
- - _class: Expressir::Model::Expressions::SimpleReference
450
+ - _class: Expressir::Model::References::SimpleReference
435
451
  id: attribute_entity
436
452
  base_path: syntax_schema.attribute_entity
437
453
  attributes:
438
- - _class: Expressir::Model::Attribute
454
+ - _class: Expressir::Model::Declarations::Attribute
439
455
  kind: :INVERSE
440
456
  supertype_attribute:
441
- _class: Expressir::Model::Expressions::AttributeReference
457
+ _class: Expressir::Model::References::AttributeReference
442
458
  ref:
443
- _class: Expressir::Model::Expressions::GroupReference
459
+ _class: Expressir::Model::References::GroupReference
444
460
  ref:
445
- _class: Expressir::Model::Expressions::SimpleReference
461
+ _class: Expressir::Model::References::SimpleReference
446
462
  id: SELF
447
463
  entity:
448
- _class: Expressir::Model::Expressions::SimpleReference
464
+ _class: Expressir::Model::References::SimpleReference
449
465
  id: attribute_entity
450
466
  base_path: syntax_schema.attribute_entity
451
467
  attribute:
452
- _class: Expressir::Model::Expressions::SimpleReference
468
+ _class: Expressir::Model::References::SimpleReference
453
469
  id: test
454
470
  type:
455
- _class: Expressir::Model::Expressions::SimpleReference
471
+ _class: Expressir::Model::References::SimpleReference
456
472
  id: attribute_entity
457
473
  base_path: syntax_schema.attribute_entity
458
474
  expression:
459
- _class: Expressir::Model::Expressions::SimpleReference
475
+ _class: Expressir::Model::References::SimpleReference
460
476
  id: test
461
- - _class: Expressir::Model::Entity
477
+ - _class: Expressir::Model::Declarations::Entity
462
478
  id: inverse_attribute_redeclared_renamed_entity
463
479
  subtype_of:
464
- - _class: Expressir::Model::Expressions::SimpleReference
480
+ - _class: Expressir::Model::References::SimpleReference
465
481
  id: attribute_entity
466
482
  base_path: syntax_schema.attribute_entity
467
483
  attributes:
468
- - _class: Expressir::Model::Attribute
484
+ - _class: Expressir::Model::Declarations::Attribute
469
485
  id: test2
470
486
  kind: :INVERSE
471
487
  supertype_attribute:
472
- _class: Expressir::Model::Expressions::AttributeReference
488
+ _class: Expressir::Model::References::AttributeReference
473
489
  ref:
474
- _class: Expressir::Model::Expressions::GroupReference
490
+ _class: Expressir::Model::References::GroupReference
475
491
  ref:
476
- _class: Expressir::Model::Expressions::SimpleReference
492
+ _class: Expressir::Model::References::SimpleReference
477
493
  id: SELF
478
494
  entity:
479
- _class: Expressir::Model::Expressions::SimpleReference
495
+ _class: Expressir::Model::References::SimpleReference
480
496
  id: attribute_entity
481
497
  base_path: syntax_schema.attribute_entity
482
498
  attribute:
483
- _class: Expressir::Model::Expressions::SimpleReference
499
+ _class: Expressir::Model::References::SimpleReference
484
500
  id: test
485
501
  type:
486
- _class: Expressir::Model::Expressions::SimpleReference
502
+ _class: Expressir::Model::References::SimpleReference
487
503
  id: attribute_entity
488
504
  base_path: syntax_schema.attribute_entity
489
505
  expression:
490
- _class: Expressir::Model::Expressions::SimpleReference
506
+ _class: Expressir::Model::References::SimpleReference
491
507
  id: test
492
- - _class: Expressir::Model::Entity
508
+ - _class: Expressir::Model::Declarations::Entity
493
509
  id: unique_entity
494
510
  attributes:
495
- - _class: Expressir::Model::Attribute
511
+ - _class: Expressir::Model::Declarations::Attribute
496
512
  id: test
497
513
  kind: :EXPLICIT
498
514
  type:
499
- _class: Expressir::Model::Types::Boolean
500
- unique:
501
- - _class: Expressir::Model::Unique
515
+ _class: Expressir::Model::DataTypes::Boolean
516
+ unique_rules:
517
+ - _class: Expressir::Model::Declarations::UniqueRule
502
518
  attributes:
503
- - _class: Expressir::Model::Expressions::SimpleReference
519
+ - _class: Expressir::Model::References::SimpleReference
504
520
  id: test
505
521
  base_path: syntax_schema.unique_entity.test
506
- - _class: Expressir::Model::Entity
522
+ - _class: Expressir::Model::Declarations::Entity
507
523
  id: unique_label_entity
508
524
  attributes:
509
- - _class: Expressir::Model::Attribute
525
+ - _class: Expressir::Model::Declarations::Attribute
510
526
  id: test
511
527
  kind: :EXPLICIT
512
528
  type:
513
- _class: Expressir::Model::Types::Boolean
514
- unique:
515
- - _class: Expressir::Model::Unique
529
+ _class: Expressir::Model::DataTypes::Boolean
530
+ unique_rules:
531
+ - _class: Expressir::Model::Declarations::UniqueRule
516
532
  id: UR1
517
533
  attributes:
518
- - _class: Expressir::Model::Expressions::SimpleReference
534
+ - _class: Expressir::Model::References::SimpleReference
519
535
  id: test
520
536
  base_path: syntax_schema.unique_label_entity.test
521
- - _class: Expressir::Model::Entity
537
+ - _class: Expressir::Model::Declarations::Entity
522
538
  id: unique_redeclared_entity
523
539
  subtype_of:
524
- - _class: Expressir::Model::Expressions::SimpleReference
540
+ - _class: Expressir::Model::References::SimpleReference
525
541
  id: attribute_entity
526
542
  base_path: syntax_schema.attribute_entity
527
- unique:
528
- - _class: Expressir::Model::Unique
543
+ unique_rules:
544
+ - _class: Expressir::Model::Declarations::UniqueRule
529
545
  attributes:
530
- - _class: Expressir::Model::Expressions::AttributeReference
546
+ - _class: Expressir::Model::References::AttributeReference
531
547
  ref:
532
- _class: Expressir::Model::Expressions::GroupReference
548
+ _class: Expressir::Model::References::GroupReference
533
549
  ref:
534
- _class: Expressir::Model::Expressions::SimpleReference
550
+ _class: Expressir::Model::References::SimpleReference
535
551
  id: SELF
536
552
  entity:
537
- _class: Expressir::Model::Expressions::SimpleReference
553
+ _class: Expressir::Model::References::SimpleReference
538
554
  id: attribute_entity
539
555
  base_path: syntax_schema.attribute_entity
540
556
  attribute:
541
- _class: Expressir::Model::Expressions::SimpleReference
557
+ _class: Expressir::Model::References::SimpleReference
542
558
  id: test
543
- - _class: Expressir::Model::Entity
559
+ - _class: Expressir::Model::Declarations::Entity
544
560
  id: unique_label_redeclared_entity
545
561
  subtype_of:
546
- - _class: Expressir::Model::Expressions::SimpleReference
562
+ - _class: Expressir::Model::References::SimpleReference
547
563
  id: attribute_entity
548
564
  base_path: syntax_schema.attribute_entity
549
- unique:
550
- - _class: Expressir::Model::Unique
565
+ unique_rules:
566
+ - _class: Expressir::Model::Declarations::UniqueRule
551
567
  id: UR1
552
568
  attributes:
553
- - _class: Expressir::Model::Expressions::AttributeReference
569
+ - _class: Expressir::Model::References::AttributeReference
554
570
  ref:
555
- _class: Expressir::Model::Expressions::GroupReference
571
+ _class: Expressir::Model::References::GroupReference
556
572
  ref:
557
- _class: Expressir::Model::Expressions::SimpleReference
573
+ _class: Expressir::Model::References::SimpleReference
558
574
  id: SELF
559
575
  entity:
560
- _class: Expressir::Model::Expressions::SimpleReference
576
+ _class: Expressir::Model::References::SimpleReference
561
577
  id: attribute_entity
562
578
  base_path: syntax_schema.attribute_entity
563
579
  attribute:
564
- _class: Expressir::Model::Expressions::SimpleReference
580
+ _class: Expressir::Model::References::SimpleReference
565
581
  id: test
566
- - _class: Expressir::Model::Entity
582
+ - _class: Expressir::Model::Declarations::Entity
567
583
  id: where_entity
568
- where:
569
- - _class: Expressir::Model::Where
584
+ where_rules:
585
+ - _class: Expressir::Model::Declarations::WhereRule
570
586
  expression:
571
587
  _class: Expressir::Model::Literals::Logical
572
588
  value: :TRUE
573
- - _class: Expressir::Model::Entity
589
+ - _class: Expressir::Model::Declarations::Entity
574
590
  id: where_label_entity
575
- where:
576
- - _class: Expressir::Model::Where
591
+ where_rules:
592
+ - _class: Expressir::Model::Declarations::WhereRule
577
593
  id: WR1
578
594
  expression:
579
595
  _class: Expressir::Model::Literals::Logical
580
596
  value: :TRUE
581
597
  subtype_constraints:
582
- - _class: Expressir::Model::SubtypeConstraint
598
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
583
599
  id: empty_subtype_constraint
584
600
  applies_to:
585
- _class: Expressir::Model::Expressions::SimpleReference
601
+ _class: Expressir::Model::References::SimpleReference
586
602
  id: empty_entity
587
603
  base_path: syntax_schema.empty_entity
588
- - _class: Expressir::Model::SubtypeConstraint
604
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
589
605
  id: abstract_supertype_subtype_constraint
590
606
  applies_to:
591
- _class: Expressir::Model::Expressions::SimpleReference
607
+ _class: Expressir::Model::References::SimpleReference
592
608
  id: empty_entity
593
609
  base_path: syntax_schema.empty_entity
594
610
  abstract: true
595
- - _class: Expressir::Model::SubtypeConstraint
611
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
596
612
  id: total_over_subtype_constraint
597
613
  applies_to:
598
- _class: Expressir::Model::Expressions::SimpleReference
614
+ _class: Expressir::Model::References::SimpleReference
599
615
  id: empty_entity
600
616
  base_path: syntax_schema.empty_entity
601
617
  total_over:
602
- - _class: Expressir::Model::Expressions::SimpleReference
618
+ - _class: Expressir::Model::References::SimpleReference
603
619
  id: a
604
- - _class: Expressir::Model::SubtypeConstraint
620
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
605
621
  id: supertype_expression_subtype_constraint
606
622
  applies_to:
607
- _class: Expressir::Model::Expressions::SimpleReference
623
+ _class: Expressir::Model::References::SimpleReference
608
624
  id: empty_entity
609
625
  base_path: syntax_schema.empty_entity
610
626
  supertype_expression:
611
- _class: Expressir::Model::Expressions::SimpleReference
627
+ _class: Expressir::Model::References::SimpleReference
612
628
  id: a
613
- - _class: Expressir::Model::SubtypeConstraint
629
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
614
630
  id: supertype_expression_andor_subtype_constraint
615
631
  applies_to:
616
- _class: Expressir::Model::Expressions::SimpleReference
632
+ _class: Expressir::Model::References::SimpleReference
617
633
  id: empty_entity
618
634
  base_path: syntax_schema.empty_entity
619
635
  supertype_expression:
620
- _class: Expressir::Model::Expressions::BinaryExpression
636
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
621
637
  operator: :ANDOR
622
638
  operand1:
623
- _class: Expressir::Model::Expressions::SimpleReference
639
+ _class: Expressir::Model::References::SimpleReference
624
640
  id: a
625
641
  operand2:
626
- _class: Expressir::Model::Expressions::SimpleReference
642
+ _class: Expressir::Model::References::SimpleReference
627
643
  id: b
628
- - _class: Expressir::Model::SubtypeConstraint
644
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
629
645
  id: supertype_expression_and_subtype_constraint
630
646
  applies_to:
631
- _class: Expressir::Model::Expressions::SimpleReference
647
+ _class: Expressir::Model::References::SimpleReference
632
648
  id: empty_entity
633
649
  base_path: syntax_schema.empty_entity
634
650
  supertype_expression:
635
- _class: Expressir::Model::Expressions::BinaryExpression
651
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
636
652
  operator: :AND
637
653
  operand1:
638
- _class: Expressir::Model::Expressions::SimpleReference
654
+ _class: Expressir::Model::References::SimpleReference
639
655
  id: a
640
656
  operand2:
641
- _class: Expressir::Model::Expressions::SimpleReference
657
+ _class: Expressir::Model::References::SimpleReference
642
658
  id: b
643
- - _class: Expressir::Model::SubtypeConstraint
659
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
644
660
  id: supertype_expression_andor_and_subtype_constraint
645
661
  applies_to:
646
- _class: Expressir::Model::Expressions::SimpleReference
662
+ _class: Expressir::Model::References::SimpleReference
647
663
  id: empty_entity
648
664
  base_path: syntax_schema.empty_entity
649
665
  supertype_expression:
650
- _class: Expressir::Model::Expressions::BinaryExpression
666
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
651
667
  operator: :ANDOR
652
668
  operand1:
653
- _class: Expressir::Model::Expressions::SimpleReference
669
+ _class: Expressir::Model::References::SimpleReference
654
670
  id: a
655
671
  operand2:
656
- _class: Expressir::Model::Expressions::BinaryExpression
672
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
657
673
  operator: :AND
658
674
  operand1:
659
- _class: Expressir::Model::Expressions::SimpleReference
675
+ _class: Expressir::Model::References::SimpleReference
660
676
  id: b
661
677
  operand2:
662
- _class: Expressir::Model::Expressions::SimpleReference
678
+ _class: Expressir::Model::References::SimpleReference
663
679
  id: c
664
- - _class: Expressir::Model::SubtypeConstraint
680
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
665
681
  id: supertype_expression_and_andor_subtype_constraint
666
682
  applies_to:
667
- _class: Expressir::Model::Expressions::SimpleReference
683
+ _class: Expressir::Model::References::SimpleReference
668
684
  id: empty_entity
669
685
  base_path: syntax_schema.empty_entity
670
686
  supertype_expression:
671
- _class: Expressir::Model::Expressions::BinaryExpression
687
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
672
688
  operator: :ANDOR
673
689
  operand1:
674
- _class: Expressir::Model::Expressions::BinaryExpression
690
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
675
691
  operator: :AND
676
692
  operand1:
677
- _class: Expressir::Model::Expressions::SimpleReference
693
+ _class: Expressir::Model::References::SimpleReference
678
694
  id: a
679
695
  operand2:
680
- _class: Expressir::Model::Expressions::SimpleReference
696
+ _class: Expressir::Model::References::SimpleReference
681
697
  id: b
682
698
  operand2:
683
- _class: Expressir::Model::Expressions::SimpleReference
699
+ _class: Expressir::Model::References::SimpleReference
684
700
  id: c
685
- - _class: Expressir::Model::SubtypeConstraint
701
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
686
702
  id: supertype_expression_parenthesis_andor_and_subtype_constraint
687
703
  applies_to:
688
- _class: Expressir::Model::Expressions::SimpleReference
704
+ _class: Expressir::Model::References::SimpleReference
689
705
  id: empty_entity
690
706
  base_path: syntax_schema.empty_entity
691
707
  supertype_expression:
692
- _class: Expressir::Model::Expressions::BinaryExpression
708
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
693
709
  operator: :AND
694
710
  operand1:
695
- _class: Expressir::Model::Expressions::BinaryExpression
711
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
696
712
  operator: :ANDOR
697
713
  operand1:
698
- _class: Expressir::Model::Expressions::SimpleReference
714
+ _class: Expressir::Model::References::SimpleReference
699
715
  id: a
700
716
  operand2:
701
- _class: Expressir::Model::Expressions::SimpleReference
717
+ _class: Expressir::Model::References::SimpleReference
702
718
  id: b
703
719
  operand2:
704
- _class: Expressir::Model::Expressions::SimpleReference
720
+ _class: Expressir::Model::References::SimpleReference
705
721
  id: c
706
- - _class: Expressir::Model::SubtypeConstraint
722
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
707
723
  id: supertype_expression_and_parenthesis_andor_subtype_constraint
708
724
  applies_to:
709
- _class: Expressir::Model::Expressions::SimpleReference
725
+ _class: Expressir::Model::References::SimpleReference
710
726
  id: empty_entity
711
727
  base_path: syntax_schema.empty_entity
712
728
  supertype_expression:
713
- _class: Expressir::Model::Expressions::BinaryExpression
729
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
714
730
  operator: :AND
715
731
  operand1:
716
- _class: Expressir::Model::Expressions::SimpleReference
732
+ _class: Expressir::Model::References::SimpleReference
717
733
  id: a
718
734
  operand2:
719
- _class: Expressir::Model::Expressions::BinaryExpression
735
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
720
736
  operator: :ANDOR
721
737
  operand1:
722
- _class: Expressir::Model::Expressions::SimpleReference
738
+ _class: Expressir::Model::References::SimpleReference
723
739
  id: b
724
740
  operand2:
725
- _class: Expressir::Model::Expressions::SimpleReference
741
+ _class: Expressir::Model::References::SimpleReference
726
742
  id: c
727
- - _class: Expressir::Model::SubtypeConstraint
743
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
728
744
  id: supertype_expression_oneof_subtype_constraint
729
745
  applies_to:
730
- _class: Expressir::Model::Expressions::SimpleReference
746
+ _class: Expressir::Model::References::SimpleReference
731
747
  id: empty_entity
732
748
  base_path: syntax_schema.empty_entity
733
749
  supertype_expression:
734
- _class: Expressir::Model::Expressions::Call
735
- ref:
736
- _class: Expressir::Model::Expressions::SimpleReference
737
- id: ONEOF
738
- parameters:
739
- - _class: Expressir::Model::Expressions::SimpleReference
750
+ _class: Expressir::Model::SupertypeExpressions::OneofSupertypeExpression
751
+ operands:
752
+ - _class: Expressir::Model::References::SimpleReference
740
753
  id: a
741
- - _class: Expressir::Model::Expressions::SimpleReference
754
+ - _class: Expressir::Model::References::SimpleReference
742
755
  id: b
743
- - _class: Expressir::Model::SubtypeConstraint
756
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
744
757
  id: supertype_expression_and_oneof_subtype_constraint
745
758
  applies_to:
746
- _class: Expressir::Model::Expressions::SimpleReference
759
+ _class: Expressir::Model::References::SimpleReference
747
760
  id: empty_entity
748
761
  base_path: syntax_schema.empty_entity
749
762
  supertype_expression:
750
- _class: Expressir::Model::Expressions::BinaryExpression
763
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
751
764
  operator: :AND
752
765
  operand1:
753
- _class: Expressir::Model::Expressions::SimpleReference
766
+ _class: Expressir::Model::References::SimpleReference
754
767
  id: a
755
768
  operand2:
756
- _class: Expressir::Model::Expressions::Call
757
- ref:
758
- _class: Expressir::Model::Expressions::SimpleReference
759
- id: ONEOF
760
- parameters:
761
- - _class: Expressir::Model::Expressions::SimpleReference
769
+ _class: Expressir::Model::SupertypeExpressions::OneofSupertypeExpression
770
+ operands:
771
+ - _class: Expressir::Model::References::SimpleReference
762
772
  id: b
763
- - _class: Expressir::Model::Expressions::SimpleReference
773
+ - _class: Expressir::Model::References::SimpleReference
764
774
  id: c
765
- - _class: Expressir::Model::SubtypeConstraint
775
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
766
776
  id: supertype_expression_andor_oneof_subtype_constraint
767
777
  applies_to:
768
- _class: Expressir::Model::Expressions::SimpleReference
778
+ _class: Expressir::Model::References::SimpleReference
769
779
  id: empty_entity
770
780
  base_path: syntax_schema.empty_entity
771
781
  supertype_expression:
772
- _class: Expressir::Model::Expressions::BinaryExpression
782
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
773
783
  operator: :ANDOR
774
784
  operand1:
775
- _class: Expressir::Model::Expressions::SimpleReference
785
+ _class: Expressir::Model::References::SimpleReference
776
786
  id: a
777
787
  operand2:
778
- _class: Expressir::Model::Expressions::Call
779
- ref:
780
- _class: Expressir::Model::Expressions::SimpleReference
781
- id: ONEOF
782
- parameters:
783
- - _class: Expressir::Model::Expressions::SimpleReference
788
+ _class: Expressir::Model::SupertypeExpressions::OneofSupertypeExpression
789
+ operands:
790
+ - _class: Expressir::Model::References::SimpleReference
784
791
  id: b
785
- - _class: Expressir::Model::Expressions::SimpleReference
792
+ - _class: Expressir::Model::References::SimpleReference
786
793
  id: c
787
- - _class: Expressir::Model::SubtypeConstraint
794
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
788
795
  id: supertype_expression_oneof_and_subtype_constraint
789
796
  applies_to:
790
- _class: Expressir::Model::Expressions::SimpleReference
797
+ _class: Expressir::Model::References::SimpleReference
791
798
  id: empty_entity
792
799
  base_path: syntax_schema.empty_entity
793
800
  supertype_expression:
794
- _class: Expressir::Model::Expressions::BinaryExpression
801
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
795
802
  operator: :AND
796
803
  operand1:
797
- _class: Expressir::Model::Expressions::Call
798
- ref:
799
- _class: Expressir::Model::Expressions::SimpleReference
800
- id: ONEOF
801
- parameters:
802
- - _class: Expressir::Model::Expressions::SimpleReference
804
+ _class: Expressir::Model::SupertypeExpressions::OneofSupertypeExpression
805
+ operands:
806
+ - _class: Expressir::Model::References::SimpleReference
803
807
  id: a
804
- - _class: Expressir::Model::Expressions::SimpleReference
808
+ - _class: Expressir::Model::References::SimpleReference
805
809
  id: b
806
810
  operand2:
807
- _class: Expressir::Model::Expressions::SimpleReference
811
+ _class: Expressir::Model::References::SimpleReference
808
812
  id: c
809
- - _class: Expressir::Model::SubtypeConstraint
813
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
810
814
  id: supertype_expression_oneof_andor_subtype_constraint
811
815
  applies_to:
812
- _class: Expressir::Model::Expressions::SimpleReference
816
+ _class: Expressir::Model::References::SimpleReference
813
817
  id: empty_entity
814
818
  base_path: syntax_schema.empty_entity
815
819
  supertype_expression:
816
- _class: Expressir::Model::Expressions::BinaryExpression
820
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
817
821
  operator: :ANDOR
818
822
  operand1:
819
- _class: Expressir::Model::Expressions::Call
820
- ref:
821
- _class: Expressir::Model::Expressions::SimpleReference
822
- id: ONEOF
823
- parameters:
824
- - _class: Expressir::Model::Expressions::SimpleReference
823
+ _class: Expressir::Model::SupertypeExpressions::OneofSupertypeExpression
824
+ operands:
825
+ - _class: Expressir::Model::References::SimpleReference
825
826
  id: a
826
- - _class: Expressir::Model::Expressions::SimpleReference
827
+ - _class: Expressir::Model::References::SimpleReference
827
828
  id: b
828
829
  operand2:
829
- _class: Expressir::Model::Expressions::SimpleReference
830
+ _class: Expressir::Model::References::SimpleReference
830
831
  id: c
831
- - _class: Expressir::Model::SubtypeConstraint
832
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
832
833
  id: supertype_expression_oneof_and_oneof_subtype_constraint
833
834
  applies_to:
834
- _class: Expressir::Model::Expressions::SimpleReference
835
+ _class: Expressir::Model::References::SimpleReference
835
836
  id: empty_entity
836
837
  base_path: syntax_schema.empty_entity
837
838
  supertype_expression:
838
- _class: Expressir::Model::Expressions::BinaryExpression
839
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
839
840
  operator: :AND
840
841
  operand1:
841
- _class: Expressir::Model::Expressions::Call
842
- ref:
843
- _class: Expressir::Model::Expressions::SimpleReference
844
- id: ONEOF
845
- parameters:
846
- - _class: Expressir::Model::Expressions::SimpleReference
842
+ _class: Expressir::Model::SupertypeExpressions::OneofSupertypeExpression
843
+ operands:
844
+ - _class: Expressir::Model::References::SimpleReference
847
845
  id: a
848
- - _class: Expressir::Model::Expressions::SimpleReference
846
+ - _class: Expressir::Model::References::SimpleReference
849
847
  id: b
850
848
  operand2:
851
- _class: Expressir::Model::Expressions::Call
852
- ref:
853
- _class: Expressir::Model::Expressions::SimpleReference
854
- id: ONEOF
855
- parameters:
856
- - _class: Expressir::Model::Expressions::SimpleReference
849
+ _class: Expressir::Model::SupertypeExpressions::OneofSupertypeExpression
850
+ operands:
851
+ - _class: Expressir::Model::References::SimpleReference
857
852
  id: c
858
- - _class: Expressir::Model::Expressions::SimpleReference
853
+ - _class: Expressir::Model::References::SimpleReference
859
854
  id: d
860
- - _class: Expressir::Model::SubtypeConstraint
855
+ - _class: Expressir::Model::Declarations::SubtypeConstraint
861
856
  id: supertype_expression_oneof_andor_oneof_subtype_constraint
862
857
  applies_to:
863
- _class: Expressir::Model::Expressions::SimpleReference
858
+ _class: Expressir::Model::References::SimpleReference
864
859
  id: empty_entity
865
860
  base_path: syntax_schema.empty_entity
866
861
  supertype_expression:
867
- _class: Expressir::Model::Expressions::BinaryExpression
862
+ _class: Expressir::Model::SupertypeExpressions::BinarySupertypeExpression
868
863
  operator: :ANDOR
869
864
  operand1:
870
- _class: Expressir::Model::Expressions::Call
871
- ref:
872
- _class: Expressir::Model::Expressions::SimpleReference
873
- id: ONEOF
874
- parameters:
875
- - _class: Expressir::Model::Expressions::SimpleReference
865
+ _class: Expressir::Model::SupertypeExpressions::OneofSupertypeExpression
866
+ operands:
867
+ - _class: Expressir::Model::References::SimpleReference
876
868
  id: a
877
- - _class: Expressir::Model::Expressions::SimpleReference
869
+ - _class: Expressir::Model::References::SimpleReference
878
870
  id: b
879
871
  operand2:
880
- _class: Expressir::Model::Expressions::Call
881
- ref:
882
- _class: Expressir::Model::Expressions::SimpleReference
883
- id: ONEOF
884
- parameters:
885
- - _class: Expressir::Model::Expressions::SimpleReference
872
+ _class: Expressir::Model::SupertypeExpressions::OneofSupertypeExpression
873
+ operands:
874
+ - _class: Expressir::Model::References::SimpleReference
886
875
  id: c
887
- - _class: Expressir::Model::Expressions::SimpleReference
876
+ - _class: Expressir::Model::References::SimpleReference
888
877
  id: d
889
878
  functions:
890
- - _class: Expressir::Model::Function
879
+ - _class: Expressir::Model::Declarations::Function
891
880
  id: empty_function
892
881
  return_type:
893
- _class: Expressir::Model::Types::Boolean
882
+ _class: Expressir::Model::DataTypes::Boolean
894
883
  statements:
895
884
  - _class: Expressir::Model::Statements::Null
896
- - _class: Expressir::Model::Function
885
+ - _class: Expressir::Model::Declarations::Function
897
886
  id: parameter_function
898
887
  parameters:
899
- - _class: Expressir::Model::Parameter
888
+ - _class: Expressir::Model::Declarations::Parameter
900
889
  id: test
901
890
  type:
902
- _class: Expressir::Model::Types::Boolean
891
+ _class: Expressir::Model::DataTypes::Boolean
903
892
  return_type:
904
- _class: Expressir::Model::Types::Boolean
893
+ _class: Expressir::Model::DataTypes::Boolean
905
894
  statements:
906
895
  - _class: Expressir::Model::Statements::Null
907
- - _class: Expressir::Model::Function
896
+ - _class: Expressir::Model::Declarations::Function
908
897
  id: multiple_parameter_function
909
898
  parameters:
910
- - _class: Expressir::Model::Parameter
899
+ - _class: Expressir::Model::Declarations::Parameter
911
900
  id: test
912
901
  type:
913
- _class: Expressir::Model::Types::Boolean
914
- - _class: Expressir::Model::Parameter
902
+ _class: Expressir::Model::DataTypes::Boolean
903
+ - _class: Expressir::Model::Declarations::Parameter
915
904
  id: test2
916
905
  type:
917
- _class: Expressir::Model::Types::Boolean
906
+ _class: Expressir::Model::DataTypes::Boolean
918
907
  return_type:
919
- _class: Expressir::Model::Types::Boolean
908
+ _class: Expressir::Model::DataTypes::Boolean
920
909
  statements:
921
910
  - _class: Expressir::Model::Statements::Null
922
- - _class: Expressir::Model::Function
911
+ - _class: Expressir::Model::Declarations::Function
923
912
  id: multiple_shorthand_parameter_function
924
913
  parameters:
925
- - _class: Expressir::Model::Parameter
914
+ - _class: Expressir::Model::Declarations::Parameter
926
915
  id: test
927
916
  type:
928
- _class: Expressir::Model::Types::Boolean
929
- - _class: Expressir::Model::Parameter
917
+ _class: Expressir::Model::DataTypes::Boolean
918
+ - _class: Expressir::Model::Declarations::Parameter
930
919
  id: test2
931
920
  type:
932
- _class: Expressir::Model::Types::Boolean
921
+ _class: Expressir::Model::DataTypes::Boolean
933
922
  return_type:
934
- _class: Expressir::Model::Types::Boolean
923
+ _class: Expressir::Model::DataTypes::Boolean
935
924
  statements:
936
925
  - _class: Expressir::Model::Statements::Null
937
- - _class: Expressir::Model::Function
926
+ - _class: Expressir::Model::Declarations::Function
938
927
  id: type_function
939
928
  return_type:
940
- _class: Expressir::Model::Types::Boolean
929
+ _class: Expressir::Model::DataTypes::Boolean
941
930
  types:
942
- - _class: Expressir::Model::Type
931
+ - _class: Expressir::Model::Declarations::Type
943
932
  id: test
944
- type:
945
- _class: Expressir::Model::Types::Boolean
933
+ underlying_type:
934
+ _class: Expressir::Model::DataTypes::Boolean
946
935
  statements:
947
936
  - _class: Expressir::Model::Statements::Null
948
- - _class: Expressir::Model::Function
937
+ - _class: Expressir::Model::Declarations::Function
949
938
  id: constant_function
950
939
  return_type:
951
- _class: Expressir::Model::Types::Boolean
940
+ _class: Expressir::Model::DataTypes::Boolean
952
941
  constants:
953
- - _class: Expressir::Model::Constant
942
+ - _class: Expressir::Model::Declarations::Constant
954
943
  id: test
955
944
  type:
956
- _class: Expressir::Model::Types::Boolean
945
+ _class: Expressir::Model::DataTypes::Boolean
957
946
  expression:
958
947
  _class: Expressir::Model::Literals::Logical
959
948
  value: :TRUE
960
949
  statements:
961
950
  - _class: Expressir::Model::Statements::Null
962
- - _class: Expressir::Model::Function
951
+ - _class: Expressir::Model::Declarations::Function
963
952
  id: multiple_constant_function
964
953
  return_type:
965
- _class: Expressir::Model::Types::Boolean
954
+ _class: Expressir::Model::DataTypes::Boolean
966
955
  constants:
967
- - _class: Expressir::Model::Constant
956
+ - _class: Expressir::Model::Declarations::Constant
968
957
  id: test
969
958
  type:
970
- _class: Expressir::Model::Types::Boolean
959
+ _class: Expressir::Model::DataTypes::Boolean
971
960
  expression:
972
961
  _class: Expressir::Model::Literals::Logical
973
962
  value: :TRUE
974
- - _class: Expressir::Model::Constant
963
+ - _class: Expressir::Model::Declarations::Constant
975
964
  id: test2
976
965
  type:
977
- _class: Expressir::Model::Types::Boolean
966
+ _class: Expressir::Model::DataTypes::Boolean
978
967
  expression:
979
968
  _class: Expressir::Model::Literals::Logical
980
969
  value: :TRUE
981
970
  statements:
982
971
  - _class: Expressir::Model::Statements::Null
983
- - _class: Expressir::Model::Function
972
+ - _class: Expressir::Model::Declarations::Function
984
973
  id: variable_function
985
974
  return_type:
986
- _class: Expressir::Model::Types::Boolean
975
+ _class: Expressir::Model::DataTypes::Boolean
987
976
  variables:
988
- - _class: Expressir::Model::Variable
977
+ - _class: Expressir::Model::Declarations::Variable
989
978
  id: test
990
979
  type:
991
- _class: Expressir::Model::Types::Boolean
980
+ _class: Expressir::Model::DataTypes::Boolean
992
981
  statements:
993
982
  - _class: Expressir::Model::Statements::Null
994
- - _class: Expressir::Model::Function
983
+ - _class: Expressir::Model::Declarations::Function
995
984
  id: multiple_variable_function
996
985
  return_type:
997
- _class: Expressir::Model::Types::Boolean
986
+ _class: Expressir::Model::DataTypes::Boolean
998
987
  variables:
999
- - _class: Expressir::Model::Variable
988
+ - _class: Expressir::Model::Declarations::Variable
1000
989
  id: test
1001
990
  type:
1002
- _class: Expressir::Model::Types::Boolean
1003
- - _class: Expressir::Model::Variable
991
+ _class: Expressir::Model::DataTypes::Boolean
992
+ - _class: Expressir::Model::Declarations::Variable
1004
993
  id: test2
1005
994
  type:
1006
- _class: Expressir::Model::Types::Boolean
995
+ _class: Expressir::Model::DataTypes::Boolean
1007
996
  statements:
1008
997
  - _class: Expressir::Model::Statements::Null
1009
- - _class: Expressir::Model::Function
998
+ - _class: Expressir::Model::Declarations::Function
1010
999
  id: multiple_shorthand_variable_function
1011
1000
  return_type:
1012
- _class: Expressir::Model::Types::Boolean
1001
+ _class: Expressir::Model::DataTypes::Boolean
1013
1002
  variables:
1014
- - _class: Expressir::Model::Variable
1003
+ - _class: Expressir::Model::Declarations::Variable
1015
1004
  id: test
1016
1005
  type:
1017
- _class: Expressir::Model::Types::Boolean
1018
- - _class: Expressir::Model::Variable
1006
+ _class: Expressir::Model::DataTypes::Boolean
1007
+ - _class: Expressir::Model::Declarations::Variable
1019
1008
  id: test2
1020
1009
  type:
1021
- _class: Expressir::Model::Types::Boolean
1010
+ _class: Expressir::Model::DataTypes::Boolean
1022
1011
  statements:
1023
1012
  - _class: Expressir::Model::Statements::Null
1024
- - _class: Expressir::Model::Function
1013
+ - _class: Expressir::Model::Declarations::Function
1025
1014
  id: variable_expression_function
1026
1015
  return_type:
1027
- _class: Expressir::Model::Types::Boolean
1016
+ _class: Expressir::Model::DataTypes::Boolean
1028
1017
  variables:
1029
- - _class: Expressir::Model::Variable
1018
+ - _class: Expressir::Model::Declarations::Variable
1030
1019
  id: test
1031
1020
  type:
1032
- _class: Expressir::Model::Types::Boolean
1021
+ _class: Expressir::Model::DataTypes::Boolean
1033
1022
  expression:
1034
1023
  _class: Expressir::Model::Literals::Logical
1035
1024
  value: :TRUE
1036
1025
  statements:
1037
1026
  - _class: Expressir::Model::Statements::Null
1038
- - _class: Expressir::Model::Function
1027
+ - _class: Expressir::Model::Declarations::Function
1039
1028
  id: multiple_variable_expression_function
1040
1029
  return_type:
1041
- _class: Expressir::Model::Types::Boolean
1030
+ _class: Expressir::Model::DataTypes::Boolean
1042
1031
  variables:
1043
- - _class: Expressir::Model::Variable
1032
+ - _class: Expressir::Model::Declarations::Variable
1044
1033
  id: test
1045
1034
  type:
1046
- _class: Expressir::Model::Types::Boolean
1035
+ _class: Expressir::Model::DataTypes::Boolean
1047
1036
  expression:
1048
1037
  _class: Expressir::Model::Literals::Logical
1049
1038
  value: :TRUE
1050
- - _class: Expressir::Model::Variable
1039
+ - _class: Expressir::Model::Declarations::Variable
1051
1040
  id: test2
1052
1041
  type:
1053
- _class: Expressir::Model::Types::Boolean
1042
+ _class: Expressir::Model::DataTypes::Boolean
1054
1043
  expression:
1055
1044
  _class: Expressir::Model::Literals::Logical
1056
1045
  value: :TRUE
1057
1046
  statements:
1058
1047
  - _class: Expressir::Model::Statements::Null
1059
- - _class: Expressir::Model::Function
1048
+ - _class: Expressir::Model::Declarations::Function
1060
1049
  id: multiple_shorthand_variable_expression_function
1061
1050
  return_type:
1062
- _class: Expressir::Model::Types::Boolean
1051
+ _class: Expressir::Model::DataTypes::Boolean
1063
1052
  variables:
1064
- - _class: Expressir::Model::Variable
1053
+ - _class: Expressir::Model::Declarations::Variable
1065
1054
  id: test
1066
1055
  type:
1067
- _class: Expressir::Model::Types::Boolean
1056
+ _class: Expressir::Model::DataTypes::Boolean
1068
1057
  expression:
1069
1058
  _class: Expressir::Model::Literals::Logical
1070
1059
  value: :TRUE
1071
- - _class: Expressir::Model::Variable
1060
+ - _class: Expressir::Model::Declarations::Variable
1072
1061
  id: test2
1073
1062
  type:
1074
- _class: Expressir::Model::Types::Boolean
1063
+ _class: Expressir::Model::DataTypes::Boolean
1075
1064
  expression:
1076
1065
  _class: Expressir::Model::Literals::Logical
1077
1066
  value: :TRUE
1078
1067
  statements:
1079
1068
  - _class: Expressir::Model::Statements::Null
1080
1069
  rules:
1081
- - _class: Expressir::Model::Rule
1070
+ - _class: Expressir::Model::Declarations::Rule
1082
1071
  id: empty_rule
1083
1072
  applies_to:
1084
- - _class: Expressir::Model::Expressions::SimpleReference
1073
+ - _class: Expressir::Model::References::SimpleReference
1085
1074
  id: empty_entity
1086
1075
  base_path: syntax_schema.empty_entity
1087
- where:
1088
- - _class: Expressir::Model::Where
1076
+ where_rules:
1077
+ - _class: Expressir::Model::Declarations::WhereRule
1089
1078
  expression:
1090
1079
  _class: Expressir::Model::Literals::Logical
1091
1080
  value: :TRUE
1092
- - _class: Expressir::Model::Rule
1081
+ - _class: Expressir::Model::Declarations::Rule
1093
1082
  id: type_rule
1094
1083
  applies_to:
1095
- - _class: Expressir::Model::Expressions::SimpleReference
1084
+ - _class: Expressir::Model::References::SimpleReference
1096
1085
  id: empty_entity
1097
1086
  base_path: syntax_schema.empty_entity
1098
1087
  types:
1099
- - _class: Expressir::Model::Type
1088
+ - _class: Expressir::Model::Declarations::Type
1100
1089
  id: test
1101
- type:
1102
- _class: Expressir::Model::Types::Boolean
1103
- where:
1104
- - _class: Expressir::Model::Where
1090
+ underlying_type:
1091
+ _class: Expressir::Model::DataTypes::Boolean
1092
+ where_rules:
1093
+ - _class: Expressir::Model::Declarations::WhereRule
1105
1094
  expression:
1106
1095
  _class: Expressir::Model::Literals::Logical
1107
1096
  value: :TRUE
1108
- - _class: Expressir::Model::Rule
1097
+ - _class: Expressir::Model::Declarations::Rule
1109
1098
  id: constant_rule
1110
1099
  applies_to:
1111
- - _class: Expressir::Model::Expressions::SimpleReference
1100
+ - _class: Expressir::Model::References::SimpleReference
1112
1101
  id: empty_entity
1113
1102
  base_path: syntax_schema.empty_entity
1114
1103
  constants:
1115
- - _class: Expressir::Model::Constant
1104
+ - _class: Expressir::Model::Declarations::Constant
1116
1105
  id: test
1117
1106
  type:
1118
- _class: Expressir::Model::Types::Boolean
1107
+ _class: Expressir::Model::DataTypes::Boolean
1119
1108
  expression:
1120
1109
  _class: Expressir::Model::Literals::Logical
1121
1110
  value: :TRUE
1122
- where:
1123
- - _class: Expressir::Model::Where
1111
+ where_rules:
1112
+ - _class: Expressir::Model::Declarations::WhereRule
1124
1113
  expression:
1125
1114
  _class: Expressir::Model::Literals::Logical
1126
1115
  value: :TRUE
1127
- - _class: Expressir::Model::Rule
1116
+ - _class: Expressir::Model::Declarations::Rule
1128
1117
  id: multiple_constant_rule
1129
1118
  applies_to:
1130
- - _class: Expressir::Model::Expressions::SimpleReference
1119
+ - _class: Expressir::Model::References::SimpleReference
1131
1120
  id: empty_entity
1132
1121
  base_path: syntax_schema.empty_entity
1133
1122
  constants:
1134
- - _class: Expressir::Model::Constant
1123
+ - _class: Expressir::Model::Declarations::Constant
1135
1124
  id: test
1136
1125
  type:
1137
- _class: Expressir::Model::Types::Boolean
1126
+ _class: Expressir::Model::DataTypes::Boolean
1138
1127
  expression:
1139
1128
  _class: Expressir::Model::Literals::Logical
1140
1129
  value: :TRUE
1141
- - _class: Expressir::Model::Constant
1130
+ - _class: Expressir::Model::Declarations::Constant
1142
1131
  id: test2
1143
1132
  type:
1144
- _class: Expressir::Model::Types::Boolean
1133
+ _class: Expressir::Model::DataTypes::Boolean
1145
1134
  expression:
1146
1135
  _class: Expressir::Model::Literals::Logical
1147
1136
  value: :TRUE
1148
- where:
1149
- - _class: Expressir::Model::Where
1137
+ where_rules:
1138
+ - _class: Expressir::Model::Declarations::WhereRule
1150
1139
  expression:
1151
1140
  _class: Expressir::Model::Literals::Logical
1152
1141
  value: :TRUE
1153
- - _class: Expressir::Model::Rule
1142
+ - _class: Expressir::Model::Declarations::Rule
1154
1143
  id: variable_rule
1155
1144
  applies_to:
1156
- - _class: Expressir::Model::Expressions::SimpleReference
1145
+ - _class: Expressir::Model::References::SimpleReference
1157
1146
  id: empty_entity
1158
1147
  base_path: syntax_schema.empty_entity
1159
1148
  variables:
1160
- - _class: Expressir::Model::Variable
1149
+ - _class: Expressir::Model::Declarations::Variable
1161
1150
  id: test
1162
1151
  type:
1163
- _class: Expressir::Model::Types::Boolean
1164
- where:
1165
- - _class: Expressir::Model::Where
1152
+ _class: Expressir::Model::DataTypes::Boolean
1153
+ where_rules:
1154
+ - _class: Expressir::Model::Declarations::WhereRule
1166
1155
  expression:
1167
1156
  _class: Expressir::Model::Literals::Logical
1168
1157
  value: :TRUE
1169
- - _class: Expressir::Model::Rule
1158
+ - _class: Expressir::Model::Declarations::Rule
1170
1159
  id: multiple_variable_rule
1171
1160
  applies_to:
1172
- - _class: Expressir::Model::Expressions::SimpleReference
1161
+ - _class: Expressir::Model::References::SimpleReference
1173
1162
  id: empty_entity
1174
1163
  base_path: syntax_schema.empty_entity
1175
1164
  variables:
1176
- - _class: Expressir::Model::Variable
1165
+ - _class: Expressir::Model::Declarations::Variable
1177
1166
  id: test
1178
1167
  type:
1179
- _class: Expressir::Model::Types::Boolean
1180
- - _class: Expressir::Model::Variable
1168
+ _class: Expressir::Model::DataTypes::Boolean
1169
+ - _class: Expressir::Model::Declarations::Variable
1181
1170
  id: test2
1182
1171
  type:
1183
- _class: Expressir::Model::Types::Boolean
1184
- where:
1185
- - _class: Expressir::Model::Where
1172
+ _class: Expressir::Model::DataTypes::Boolean
1173
+ where_rules:
1174
+ - _class: Expressir::Model::Declarations::WhereRule
1186
1175
  expression:
1187
1176
  _class: Expressir::Model::Literals::Logical
1188
1177
  value: :TRUE
1189
- - _class: Expressir::Model::Rule
1178
+ - _class: Expressir::Model::Declarations::Rule
1190
1179
  id: multiple_shorthand_variable_rule
1191
1180
  applies_to:
1192
- - _class: Expressir::Model::Expressions::SimpleReference
1181
+ - _class: Expressir::Model::References::SimpleReference
1193
1182
  id: empty_entity
1194
1183
  base_path: syntax_schema.empty_entity
1195
1184
  variables:
1196
- - _class: Expressir::Model::Variable
1185
+ - _class: Expressir::Model::Declarations::Variable
1197
1186
  id: test
1198
1187
  type:
1199
- _class: Expressir::Model::Types::Boolean
1200
- - _class: Expressir::Model::Variable
1188
+ _class: Expressir::Model::DataTypes::Boolean
1189
+ - _class: Expressir::Model::Declarations::Variable
1201
1190
  id: test2
1202
1191
  type:
1203
- _class: Expressir::Model::Types::Boolean
1204
- where:
1205
- - _class: Expressir::Model::Where
1192
+ _class: Expressir::Model::DataTypes::Boolean
1193
+ where_rules:
1194
+ - _class: Expressir::Model::Declarations::WhereRule
1206
1195
  expression:
1207
1196
  _class: Expressir::Model::Literals::Logical
1208
1197
  value: :TRUE
1209
- - _class: Expressir::Model::Rule
1198
+ - _class: Expressir::Model::Declarations::Rule
1210
1199
  id: variable_expression_rule
1211
1200
  applies_to:
1212
- - _class: Expressir::Model::Expressions::SimpleReference
1201
+ - _class: Expressir::Model::References::SimpleReference
1213
1202
  id: empty_entity
1214
1203
  base_path: syntax_schema.empty_entity
1215
1204
  variables:
1216
- - _class: Expressir::Model::Variable
1205
+ - _class: Expressir::Model::Declarations::Variable
1217
1206
  id: test
1218
1207
  type:
1219
- _class: Expressir::Model::Types::Boolean
1208
+ _class: Expressir::Model::DataTypes::Boolean
1220
1209
  expression:
1221
1210
  _class: Expressir::Model::Literals::Logical
1222
1211
  value: :TRUE
1223
- where:
1224
- - _class: Expressir::Model::Where
1212
+ where_rules:
1213
+ - _class: Expressir::Model::Declarations::WhereRule
1225
1214
  expression:
1226
1215
  _class: Expressir::Model::Literals::Logical
1227
1216
  value: :TRUE
1228
- - _class: Expressir::Model::Rule
1217
+ - _class: Expressir::Model::Declarations::Rule
1229
1218
  id: multiple_variable_expression_rule
1230
1219
  applies_to:
1231
- - _class: Expressir::Model::Expressions::SimpleReference
1220
+ - _class: Expressir::Model::References::SimpleReference
1232
1221
  id: empty_entity
1233
1222
  base_path: syntax_schema.empty_entity
1234
1223
  variables:
1235
- - _class: Expressir::Model::Variable
1224
+ - _class: Expressir::Model::Declarations::Variable
1236
1225
  id: test
1237
1226
  type:
1238
- _class: Expressir::Model::Types::Boolean
1227
+ _class: Expressir::Model::DataTypes::Boolean
1239
1228
  expression:
1240
1229
  _class: Expressir::Model::Literals::Logical
1241
1230
  value: :TRUE
1242
- - _class: Expressir::Model::Variable
1231
+ - _class: Expressir::Model::Declarations::Variable
1243
1232
  id: test2
1244
1233
  type:
1245
- _class: Expressir::Model::Types::Boolean
1234
+ _class: Expressir::Model::DataTypes::Boolean
1246
1235
  expression:
1247
1236
  _class: Expressir::Model::Literals::Logical
1248
1237
  value: :TRUE
1249
- where:
1250
- - _class: Expressir::Model::Where
1238
+ where_rules:
1239
+ - _class: Expressir::Model::Declarations::WhereRule
1251
1240
  expression:
1252
1241
  _class: Expressir::Model::Literals::Logical
1253
1242
  value: :TRUE
1254
- - _class: Expressir::Model::Rule
1243
+ - _class: Expressir::Model::Declarations::Rule
1255
1244
  id: multiple_shorthand_variable_expression_rule
1256
1245
  applies_to:
1257
- - _class: Expressir::Model::Expressions::SimpleReference
1246
+ - _class: Expressir::Model::References::SimpleReference
1258
1247
  id: empty_entity
1259
1248
  base_path: syntax_schema.empty_entity
1260
1249
  variables:
1261
- - _class: Expressir::Model::Variable
1250
+ - _class: Expressir::Model::Declarations::Variable
1262
1251
  id: test
1263
1252
  type:
1264
- _class: Expressir::Model::Types::Boolean
1253
+ _class: Expressir::Model::DataTypes::Boolean
1265
1254
  expression:
1266
1255
  _class: Expressir::Model::Literals::Logical
1267
1256
  value: :TRUE
1268
- - _class: Expressir::Model::Variable
1257
+ - _class: Expressir::Model::Declarations::Variable
1269
1258
  id: test2
1270
1259
  type:
1271
- _class: Expressir::Model::Types::Boolean
1260
+ _class: Expressir::Model::DataTypes::Boolean
1272
1261
  expression:
1273
1262
  _class: Expressir::Model::Literals::Logical
1274
1263
  value: :TRUE
1275
- where:
1276
- - _class: Expressir::Model::Where
1264
+ where_rules:
1265
+ - _class: Expressir::Model::Declarations::WhereRule
1277
1266
  expression:
1278
1267
  _class: Expressir::Model::Literals::Logical
1279
1268
  value: :TRUE
1280
- - _class: Expressir::Model::Rule
1269
+ - _class: Expressir::Model::Declarations::Rule
1281
1270
  id: statement_rule
1282
1271
  applies_to:
1283
- - _class: Expressir::Model::Expressions::SimpleReference
1272
+ - _class: Expressir::Model::References::SimpleReference
1284
1273
  id: empty_entity
1285
1274
  base_path: syntax_schema.empty_entity
1286
1275
  statements:
1287
1276
  - _class: Expressir::Model::Statements::Null
1288
- where:
1289
- - _class: Expressir::Model::Where
1277
+ where_rules:
1278
+ - _class: Expressir::Model::Declarations::WhereRule
1290
1279
  expression:
1291
1280
  _class: Expressir::Model::Literals::Logical
1292
1281
  value: :TRUE
1293
- - _class: Expressir::Model::Rule
1282
+ - _class: Expressir::Model::Declarations::Rule
1294
1283
  id: where_label_rule
1295
1284
  applies_to:
1296
- - _class: Expressir::Model::Expressions::SimpleReference
1285
+ - _class: Expressir::Model::References::SimpleReference
1297
1286
  id: empty_entity
1298
1287
  base_path: syntax_schema.empty_entity
1299
- where:
1300
- - _class: Expressir::Model::Where
1288
+ where_rules:
1289
+ - _class: Expressir::Model::Declarations::WhereRule
1301
1290
  id: WR1
1302
1291
  expression:
1303
1292
  _class: Expressir::Model::Literals::Logical
1304
1293
  value: :TRUE
1305
1294
  procedures:
1306
- - _class: Expressir::Model::Procedure
1295
+ - _class: Expressir::Model::Declarations::Procedure
1307
1296
  id: empty_procedure
1308
- - _class: Expressir::Model::Procedure
1297
+ - _class: Expressir::Model::Declarations::Procedure
1309
1298
  id: parameter_procedure
1310
1299
  parameters:
1311
- - _class: Expressir::Model::Parameter
1300
+ - _class: Expressir::Model::Declarations::Parameter
1312
1301
  id: test
1313
1302
  type:
1314
- _class: Expressir::Model::Types::Boolean
1315
- - _class: Expressir::Model::Procedure
1303
+ _class: Expressir::Model::DataTypes::Boolean
1304
+ - _class: Expressir::Model::Declarations::Procedure
1316
1305
  id: multiple_parameter_procedure
1317
1306
  parameters:
1318
- - _class: Expressir::Model::Parameter
1307
+ - _class: Expressir::Model::Declarations::Parameter
1319
1308
  id: test
1320
1309
  type:
1321
- _class: Expressir::Model::Types::Boolean
1322
- - _class: Expressir::Model::Parameter
1310
+ _class: Expressir::Model::DataTypes::Boolean
1311
+ - _class: Expressir::Model::Declarations::Parameter
1323
1312
  id: test2
1324
1313
  type:
1325
- _class: Expressir::Model::Types::Boolean
1326
- - _class: Expressir::Model::Procedure
1314
+ _class: Expressir::Model::DataTypes::Boolean
1315
+ - _class: Expressir::Model::Declarations::Procedure
1327
1316
  id: multiple_shorthand_parameter_procedure
1328
1317
  parameters:
1329
- - _class: Expressir::Model::Parameter
1318
+ - _class: Expressir::Model::Declarations::Parameter
1330
1319
  id: test
1331
1320
  type:
1332
- _class: Expressir::Model::Types::Boolean
1333
- - _class: Expressir::Model::Parameter
1321
+ _class: Expressir::Model::DataTypes::Boolean
1322
+ - _class: Expressir::Model::Declarations::Parameter
1334
1323
  id: test2
1335
1324
  type:
1336
- _class: Expressir::Model::Types::Boolean
1337
- - _class: Expressir::Model::Procedure
1325
+ _class: Expressir::Model::DataTypes::Boolean
1326
+ - _class: Expressir::Model::Declarations::Procedure
1338
1327
  id: variable_parameter_procedure
1339
1328
  parameters:
1340
- - _class: Expressir::Model::Parameter
1329
+ - _class: Expressir::Model::Declarations::Parameter
1341
1330
  id: test
1342
1331
  var: true
1343
1332
  type:
1344
- _class: Expressir::Model::Types::Boolean
1345
- - _class: Expressir::Model::Procedure
1333
+ _class: Expressir::Model::DataTypes::Boolean
1334
+ - _class: Expressir::Model::Declarations::Procedure
1346
1335
  id: multiple_variable_parameter_procedure
1347
1336
  parameters:
1348
- - _class: Expressir::Model::Parameter
1337
+ - _class: Expressir::Model::Declarations::Parameter
1349
1338
  id: test
1350
1339
  var: true
1351
1340
  type:
1352
- _class: Expressir::Model::Types::Boolean
1353
- - _class: Expressir::Model::Parameter
1341
+ _class: Expressir::Model::DataTypes::Boolean
1342
+ - _class: Expressir::Model::Declarations::Parameter
1354
1343
  id: test2
1355
1344
  type:
1356
- _class: Expressir::Model::Types::Boolean
1357
- - _class: Expressir::Model::Procedure
1345
+ _class: Expressir::Model::DataTypes::Boolean
1346
+ - _class: Expressir::Model::Declarations::Procedure
1358
1347
  id: multiple_variable_parameter2_procedure
1359
1348
  parameters:
1360
- - _class: Expressir::Model::Parameter
1349
+ - _class: Expressir::Model::Declarations::Parameter
1361
1350
  id: test
1362
1351
  type:
1363
- _class: Expressir::Model::Types::Boolean
1364
- - _class: Expressir::Model::Parameter
1352
+ _class: Expressir::Model::DataTypes::Boolean
1353
+ - _class: Expressir::Model::Declarations::Parameter
1365
1354
  id: test2
1366
1355
  var: true
1367
1356
  type:
1368
- _class: Expressir::Model::Types::Boolean
1369
- - _class: Expressir::Model::Procedure
1357
+ _class: Expressir::Model::DataTypes::Boolean
1358
+ - _class: Expressir::Model::Declarations::Procedure
1370
1359
  id: multiple_shorthand_variable_parameter_procedure
1371
1360
  parameters:
1372
- - _class: Expressir::Model::Parameter
1361
+ - _class: Expressir::Model::Declarations::Parameter
1373
1362
  id: test
1374
1363
  var: true
1375
1364
  type:
1376
- _class: Expressir::Model::Types::Boolean
1377
- - _class: Expressir::Model::Parameter
1365
+ _class: Expressir::Model::DataTypes::Boolean
1366
+ - _class: Expressir::Model::Declarations::Parameter
1378
1367
  id: test2
1379
1368
  var: true
1380
1369
  type:
1381
- _class: Expressir::Model::Types::Boolean
1382
- - _class: Expressir::Model::Procedure
1370
+ _class: Expressir::Model::DataTypes::Boolean
1371
+ - _class: Expressir::Model::Declarations::Procedure
1383
1372
  id: type_procedure
1384
1373
  types:
1385
- - _class: Expressir::Model::Type
1374
+ - _class: Expressir::Model::Declarations::Type
1386
1375
  id: test
1387
- type:
1388
- _class: Expressir::Model::Types::Boolean
1389
- - _class: Expressir::Model::Procedure
1376
+ underlying_type:
1377
+ _class: Expressir::Model::DataTypes::Boolean
1378
+ - _class: Expressir::Model::Declarations::Procedure
1390
1379
  id: constant_procedure
1391
1380
  constants:
1392
- - _class: Expressir::Model::Constant
1381
+ - _class: Expressir::Model::Declarations::Constant
1393
1382
  id: test
1394
1383
  type:
1395
- _class: Expressir::Model::Types::Boolean
1384
+ _class: Expressir::Model::DataTypes::Boolean
1396
1385
  expression:
1397
1386
  _class: Expressir::Model::Literals::Logical
1398
1387
  value: :TRUE
1399
- - _class: Expressir::Model::Procedure
1388
+ - _class: Expressir::Model::Declarations::Procedure
1400
1389
  id: multiple_constant_procedure
1401
1390
  constants:
1402
- - _class: Expressir::Model::Constant
1391
+ - _class: Expressir::Model::Declarations::Constant
1403
1392
  id: test
1404
1393
  type:
1405
- _class: Expressir::Model::Types::Boolean
1394
+ _class: Expressir::Model::DataTypes::Boolean
1406
1395
  expression:
1407
1396
  _class: Expressir::Model::Literals::Logical
1408
1397
  value: :TRUE
1409
- - _class: Expressir::Model::Constant
1398
+ - _class: Expressir::Model::Declarations::Constant
1410
1399
  id: test2
1411
1400
  type:
1412
- _class: Expressir::Model::Types::Boolean
1401
+ _class: Expressir::Model::DataTypes::Boolean
1413
1402
  expression:
1414
1403
  _class: Expressir::Model::Literals::Logical
1415
1404
  value: :TRUE
1416
- - _class: Expressir::Model::Procedure
1405
+ - _class: Expressir::Model::Declarations::Procedure
1417
1406
  id: variable_procedure
1418
1407
  variables:
1419
- - _class: Expressir::Model::Variable
1408
+ - _class: Expressir::Model::Declarations::Variable
1420
1409
  id: test
1421
1410
  type:
1422
- _class: Expressir::Model::Types::Boolean
1423
- - _class: Expressir::Model::Procedure
1411
+ _class: Expressir::Model::DataTypes::Boolean
1412
+ - _class: Expressir::Model::Declarations::Procedure
1424
1413
  id: multiple_variable_procedure
1425
1414
  variables:
1426
- - _class: Expressir::Model::Variable
1415
+ - _class: Expressir::Model::Declarations::Variable
1427
1416
  id: test
1428
1417
  type:
1429
- _class: Expressir::Model::Types::Boolean
1430
- - _class: Expressir::Model::Variable
1418
+ _class: Expressir::Model::DataTypes::Boolean
1419
+ - _class: Expressir::Model::Declarations::Variable
1431
1420
  id: test2
1432
1421
  type:
1433
- _class: Expressir::Model::Types::Boolean
1434
- - _class: Expressir::Model::Procedure
1422
+ _class: Expressir::Model::DataTypes::Boolean
1423
+ - _class: Expressir::Model::Declarations::Procedure
1435
1424
  id: multiple_shorthand_variable_procedure
1436
1425
  variables:
1437
- - _class: Expressir::Model::Variable
1426
+ - _class: Expressir::Model::Declarations::Variable
1438
1427
  id: test
1439
1428
  type:
1440
- _class: Expressir::Model::Types::Boolean
1441
- - _class: Expressir::Model::Variable
1429
+ _class: Expressir::Model::DataTypes::Boolean
1430
+ - _class: Expressir::Model::Declarations::Variable
1442
1431
  id: test2
1443
1432
  type:
1444
- _class: Expressir::Model::Types::Boolean
1445
- - _class: Expressir::Model::Procedure
1433
+ _class: Expressir::Model::DataTypes::Boolean
1434
+ - _class: Expressir::Model::Declarations::Procedure
1446
1435
  id: variable_expression_procedure
1447
1436
  variables:
1448
- - _class: Expressir::Model::Variable
1437
+ - _class: Expressir::Model::Declarations::Variable
1449
1438
  id: test
1450
1439
  type:
1451
- _class: Expressir::Model::Types::Boolean
1440
+ _class: Expressir::Model::DataTypes::Boolean
1452
1441
  expression:
1453
1442
  _class: Expressir::Model::Literals::Logical
1454
1443
  value: :TRUE
1455
- - _class: Expressir::Model::Procedure
1444
+ - _class: Expressir::Model::Declarations::Procedure
1456
1445
  id: multiple_variable_expression_procedure
1457
1446
  variables:
1458
- - _class: Expressir::Model::Variable
1447
+ - _class: Expressir::Model::Declarations::Variable
1459
1448
  id: test
1460
1449
  type:
1461
- _class: Expressir::Model::Types::Boolean
1450
+ _class: Expressir::Model::DataTypes::Boolean
1462
1451
  expression:
1463
1452
  _class: Expressir::Model::Literals::Logical
1464
1453
  value: :TRUE
1465
- - _class: Expressir::Model::Variable
1454
+ - _class: Expressir::Model::Declarations::Variable
1466
1455
  id: test2
1467
1456
  type:
1468
- _class: Expressir::Model::Types::Boolean
1457
+ _class: Expressir::Model::DataTypes::Boolean
1469
1458
  expression:
1470
1459
  _class: Expressir::Model::Literals::Logical
1471
1460
  value: :TRUE
1472
- - _class: Expressir::Model::Procedure
1461
+ - _class: Expressir::Model::Declarations::Procedure
1473
1462
  id: multiple_shorthand_variable_expression_procedure
1474
1463
  variables:
1475
- - _class: Expressir::Model::Variable
1464
+ - _class: Expressir::Model::Declarations::Variable
1476
1465
  id: test
1477
1466
  type:
1478
- _class: Expressir::Model::Types::Boolean
1467
+ _class: Expressir::Model::DataTypes::Boolean
1479
1468
  expression:
1480
1469
  _class: Expressir::Model::Literals::Logical
1481
1470
  value: :TRUE
1482
- - _class: Expressir::Model::Variable
1471
+ - _class: Expressir::Model::Declarations::Variable
1483
1472
  id: test2
1484
1473
  type:
1485
- _class: Expressir::Model::Types::Boolean
1474
+ _class: Expressir::Model::DataTypes::Boolean
1486
1475
  expression:
1487
1476
  _class: Expressir::Model::Literals::Logical
1488
1477
  value: :TRUE
1489
- - _class: Expressir::Model::Procedure
1478
+ - _class: Expressir::Model::Declarations::Procedure
1490
1479
  id: statement_procedure
1491
1480
  statements:
1492
1481
  - _class: Expressir::Model::Statements::Null
1493
- - _class: Expressir::Model::Procedure
1482
+ - _class: Expressir::Model::Declarations::Procedure
1494
1483
  id: statements
1495
1484
  procedures:
1496
- - _class: Expressir::Model::Procedure
1485
+ - _class: Expressir::Model::Declarations::Procedure
1497
1486
  id: alias_simple_reference_statement
1498
1487
  statements:
1499
1488
  - _class: Expressir::Model::Statements::Alias
1500
1489
  id: test
1501
1490
  expression:
1502
- _class: Expressir::Model::Expressions::SimpleReference
1491
+ _class: Expressir::Model::References::SimpleReference
1503
1492
  id: test
1504
1493
  statements:
1505
1494
  - _class: Expressir::Model::Statements::Null
1506
- - _class: Expressir::Model::Procedure
1495
+ - _class: Expressir::Model::Declarations::Procedure
1507
1496
  id: alias_group_reference_statement
1508
1497
  statements:
1509
1498
  - _class: Expressir::Model::Statements::Alias
1510
1499
  id: test
1511
1500
  expression:
1512
- _class: Expressir::Model::Expressions::GroupReference
1501
+ _class: Expressir::Model::References::GroupReference
1513
1502
  ref:
1514
- _class: Expressir::Model::Expressions::SimpleReference
1503
+ _class: Expressir::Model::References::SimpleReference
1515
1504
  id: test
1516
1505
  entity:
1517
- _class: Expressir::Model::Expressions::SimpleReference
1506
+ _class: Expressir::Model::References::SimpleReference
1518
1507
  id: test2
1519
1508
  statements:
1520
1509
  - _class: Expressir::Model::Statements::Null
1521
- - _class: Expressir::Model::Procedure
1510
+ - _class: Expressir::Model::Declarations::Procedure
1522
1511
  id: alias_index_reference_statement
1523
1512
  statements:
1524
1513
  - _class: Expressir::Model::Statements::Alias
1525
1514
  id: test
1526
1515
  expression:
1527
- _class: Expressir::Model::Expressions::IndexReference
1516
+ _class: Expressir::Model::References::IndexReference
1528
1517
  ref:
1529
- _class: Expressir::Model::Expressions::SimpleReference
1518
+ _class: Expressir::Model::References::SimpleReference
1530
1519
  id: test
1531
1520
  index1:
1532
1521
  _class: Expressir::Model::Literals::Integer
1533
1522
  value: '1'
1534
1523
  statements:
1535
1524
  - _class: Expressir::Model::Statements::Null
1536
- - _class: Expressir::Model::Procedure
1525
+ - _class: Expressir::Model::Declarations::Procedure
1537
1526
  id: alias_index2_reference_statement
1538
1527
  statements:
1539
1528
  - _class: Expressir::Model::Statements::Alias
1540
1529
  id: test
1541
1530
  expression:
1542
- _class: Expressir::Model::Expressions::IndexReference
1531
+ _class: Expressir::Model::References::IndexReference
1543
1532
  ref:
1544
- _class: Expressir::Model::Expressions::SimpleReference
1533
+ _class: Expressir::Model::References::SimpleReference
1545
1534
  id: test
1546
1535
  index1:
1547
1536
  _class: Expressir::Model::Literals::Integer
@@ -1551,54 +1540,54 @@ schemas:
1551
1540
  value: '9'
1552
1541
  statements:
1553
1542
  - _class: Expressir::Model::Statements::Null
1554
- - _class: Expressir::Model::Procedure
1543
+ - _class: Expressir::Model::Declarations::Procedure
1555
1544
  id: alias_attribute_reference_statement
1556
1545
  statements:
1557
1546
  - _class: Expressir::Model::Statements::Alias
1558
1547
  id: test
1559
1548
  expression:
1560
- _class: Expressir::Model::Expressions::AttributeReference
1549
+ _class: Expressir::Model::References::AttributeReference
1561
1550
  ref:
1562
- _class: Expressir::Model::Expressions::SimpleReference
1551
+ _class: Expressir::Model::References::SimpleReference
1563
1552
  id: test
1564
1553
  attribute:
1565
- _class: Expressir::Model::Expressions::SimpleReference
1554
+ _class: Expressir::Model::References::SimpleReference
1566
1555
  id: test2
1567
1556
  statements:
1568
1557
  - _class: Expressir::Model::Statements::Null
1569
- - _class: Expressir::Model::Procedure
1558
+ - _class: Expressir::Model::Declarations::Procedure
1570
1559
  id: assignment_simple_reference_statement
1571
1560
  statements:
1572
1561
  - _class: Expressir::Model::Statements::Assignment
1573
1562
  ref:
1574
- _class: Expressir::Model::Expressions::SimpleReference
1563
+ _class: Expressir::Model::References::SimpleReference
1575
1564
  id: test
1576
1565
  expression:
1577
1566
  _class: Expressir::Model::Literals::Logical
1578
1567
  value: :TRUE
1579
- - _class: Expressir::Model::Procedure
1568
+ - _class: Expressir::Model::Declarations::Procedure
1580
1569
  id: assignment_group_reference_statement
1581
1570
  statements:
1582
1571
  - _class: Expressir::Model::Statements::Assignment
1583
1572
  ref:
1584
- _class: Expressir::Model::Expressions::GroupReference
1573
+ _class: Expressir::Model::References::GroupReference
1585
1574
  ref:
1586
- _class: Expressir::Model::Expressions::SimpleReference
1575
+ _class: Expressir::Model::References::SimpleReference
1587
1576
  id: test
1588
1577
  entity:
1589
- _class: Expressir::Model::Expressions::SimpleReference
1578
+ _class: Expressir::Model::References::SimpleReference
1590
1579
  id: test2
1591
1580
  expression:
1592
1581
  _class: Expressir::Model::Literals::Logical
1593
1582
  value: :TRUE
1594
- - _class: Expressir::Model::Procedure
1583
+ - _class: Expressir::Model::Declarations::Procedure
1595
1584
  id: assignment_index_reference_statement
1596
1585
  statements:
1597
1586
  - _class: Expressir::Model::Statements::Assignment
1598
1587
  ref:
1599
- _class: Expressir::Model::Expressions::IndexReference
1588
+ _class: Expressir::Model::References::IndexReference
1600
1589
  ref:
1601
- _class: Expressir::Model::Expressions::SimpleReference
1590
+ _class: Expressir::Model::References::SimpleReference
1602
1591
  id: test
1603
1592
  index1:
1604
1593
  _class: Expressir::Model::Literals::Integer
@@ -1606,14 +1595,14 @@ schemas:
1606
1595
  expression:
1607
1596
  _class: Expressir::Model::Literals::Logical
1608
1597
  value: :TRUE
1609
- - _class: Expressir::Model::Procedure
1598
+ - _class: Expressir::Model::Declarations::Procedure
1610
1599
  id: assignment_index2_reference_statement
1611
1600
  statements:
1612
1601
  - _class: Expressir::Model::Statements::Assignment
1613
1602
  ref:
1614
- _class: Expressir::Model::Expressions::IndexReference
1603
+ _class: Expressir::Model::References::IndexReference
1615
1604
  ref:
1616
- _class: Expressir::Model::Expressions::SimpleReference
1605
+ _class: Expressir::Model::References::SimpleReference
1617
1606
  id: test
1618
1607
  index1:
1619
1608
  _class: Expressir::Model::Literals::Integer
@@ -1624,27 +1613,27 @@ schemas:
1624
1613
  expression:
1625
1614
  _class: Expressir::Model::Literals::Logical
1626
1615
  value: :TRUE
1627
- - _class: Expressir::Model::Procedure
1616
+ - _class: Expressir::Model::Declarations::Procedure
1628
1617
  id: assignment_attribute_reference_statement
1629
1618
  statements:
1630
1619
  - _class: Expressir::Model::Statements::Assignment
1631
1620
  ref:
1632
- _class: Expressir::Model::Expressions::AttributeReference
1621
+ _class: Expressir::Model::References::AttributeReference
1633
1622
  ref:
1634
- _class: Expressir::Model::Expressions::SimpleReference
1623
+ _class: Expressir::Model::References::SimpleReference
1635
1624
  id: test
1636
1625
  attribute:
1637
- _class: Expressir::Model::Expressions::SimpleReference
1626
+ _class: Expressir::Model::References::SimpleReference
1638
1627
  id: test2
1639
1628
  expression:
1640
1629
  _class: Expressir::Model::Literals::Logical
1641
1630
  value: :TRUE
1642
- - _class: Expressir::Model::Procedure
1631
+ - _class: Expressir::Model::Declarations::Procedure
1643
1632
  id: case_statement
1644
1633
  statements:
1645
1634
  - _class: Expressir::Model::Statements::Case
1646
1635
  expression:
1647
- _class: Expressir::Model::Expressions::SimpleReference
1636
+ _class: Expressir::Model::References::SimpleReference
1648
1637
  id: test
1649
1638
  actions:
1650
1639
  - _class: Expressir::Model::Statements::CaseAction
@@ -1653,12 +1642,12 @@ schemas:
1653
1642
  value: :TRUE
1654
1643
  statement:
1655
1644
  _class: Expressir::Model::Statements::Null
1656
- - _class: Expressir::Model::Procedure
1645
+ - _class: Expressir::Model::Declarations::Procedure
1657
1646
  id: case_multiple_statement
1658
1647
  statements:
1659
1648
  - _class: Expressir::Model::Statements::Case
1660
1649
  expression:
1661
- _class: Expressir::Model::Expressions::SimpleReference
1650
+ _class: Expressir::Model::References::SimpleReference
1662
1651
  id: test
1663
1652
  actions:
1664
1653
  - _class: Expressir::Model::Statements::CaseAction
@@ -1673,12 +1662,12 @@ schemas:
1673
1662
  value: :TRUE
1674
1663
  statement:
1675
1664
  _class: Expressir::Model::Statements::Null
1676
- - _class: Expressir::Model::Procedure
1665
+ - _class: Expressir::Model::Declarations::Procedure
1677
1666
  id: case_multiple_shorthand_statement
1678
1667
  statements:
1679
1668
  - _class: Expressir::Model::Statements::Case
1680
1669
  expression:
1681
- _class: Expressir::Model::Expressions::SimpleReference
1670
+ _class: Expressir::Model::References::SimpleReference
1682
1671
  id: test
1683
1672
  actions:
1684
1673
  - _class: Expressir::Model::Statements::CaseAction
@@ -1689,12 +1678,12 @@ schemas:
1689
1678
  value: :TRUE
1690
1679
  statement:
1691
1680
  _class: Expressir::Model::Statements::Null
1692
- - _class: Expressir::Model::Procedure
1681
+ - _class: Expressir::Model::Declarations::Procedure
1693
1682
  id: case_otherwise_statement
1694
1683
  statements:
1695
1684
  - _class: Expressir::Model::Statements::Case
1696
1685
  expression:
1697
- _class: Expressir::Model::Expressions::SimpleReference
1686
+ _class: Expressir::Model::References::SimpleReference
1698
1687
  id: test
1699
1688
  actions:
1700
1689
  - _class: Expressir::Model::Statements::CaseAction
@@ -1705,17 +1694,17 @@ schemas:
1705
1694
  _class: Expressir::Model::Statements::Null
1706
1695
  otherwise_statement:
1707
1696
  _class: Expressir::Model::Statements::Null
1708
- - _class: Expressir::Model::Procedure
1697
+ - _class: Expressir::Model::Declarations::Procedure
1709
1698
  id: compound_statement
1710
1699
  statements:
1711
1700
  - _class: Expressir::Model::Statements::Compound
1712
1701
  statements:
1713
1702
  - _class: Expressir::Model::Statements::Null
1714
- - _class: Expressir::Model::Procedure
1703
+ - _class: Expressir::Model::Declarations::Procedure
1715
1704
  id: escape_statement
1716
1705
  statements:
1717
1706
  - _class: Expressir::Model::Statements::Escape
1718
- - _class: Expressir::Model::Procedure
1707
+ - _class: Expressir::Model::Declarations::Procedure
1719
1708
  id: if_statement
1720
1709
  statements:
1721
1710
  - _class: Expressir::Model::Statements::If
@@ -1724,7 +1713,7 @@ schemas:
1724
1713
  value: :TRUE
1725
1714
  statements:
1726
1715
  - _class: Expressir::Model::Statements::Null
1727
- - _class: Expressir::Model::Procedure
1716
+ - _class: Expressir::Model::Declarations::Procedure
1728
1717
  id: if2_statement
1729
1718
  statements:
1730
1719
  - _class: Expressir::Model::Statements::If
@@ -1734,7 +1723,7 @@ schemas:
1734
1723
  statements:
1735
1724
  - _class: Expressir::Model::Statements::Null
1736
1725
  - _class: Expressir::Model::Statements::Null
1737
- - _class: Expressir::Model::Procedure
1726
+ - _class: Expressir::Model::Declarations::Procedure
1738
1727
  id: if_else_statement
1739
1728
  statements:
1740
1729
  - _class: Expressir::Model::Statements::If
@@ -1745,7 +1734,7 @@ schemas:
1745
1734
  - _class: Expressir::Model::Statements::Null
1746
1735
  else_statements:
1747
1736
  - _class: Expressir::Model::Statements::Null
1748
- - _class: Expressir::Model::Procedure
1737
+ - _class: Expressir::Model::Declarations::Procedure
1749
1738
  id: if2_else_statement
1750
1739
  statements:
1751
1740
  - _class: Expressir::Model::Statements::If
@@ -1757,7 +1746,7 @@ schemas:
1757
1746
  - _class: Expressir::Model::Statements::Null
1758
1747
  else_statements:
1759
1748
  - _class: Expressir::Model::Statements::Null
1760
- - _class: Expressir::Model::Procedure
1749
+ - _class: Expressir::Model::Declarations::Procedure
1761
1750
  id: if_else2_statement
1762
1751
  statements:
1763
1752
  - _class: Expressir::Model::Statements::If
@@ -1769,7 +1758,7 @@ schemas:
1769
1758
  else_statements:
1770
1759
  - _class: Expressir::Model::Statements::Null
1771
1760
  - _class: Expressir::Model::Statements::Null
1772
- - _class: Expressir::Model::Procedure
1761
+ - _class: Expressir::Model::Declarations::Procedure
1773
1762
  id: if2_else2_statement
1774
1763
  statements:
1775
1764
  - _class: Expressir::Model::Statements::If
@@ -1782,35 +1771,35 @@ schemas:
1782
1771
  else_statements:
1783
1772
  - _class: Expressir::Model::Statements::Null
1784
1773
  - _class: Expressir::Model::Statements::Null
1785
- - _class: Expressir::Model::Procedure
1774
+ - _class: Expressir::Model::Declarations::Procedure
1786
1775
  id: null_statement
1787
1776
  statements:
1788
1777
  - _class: Expressir::Model::Statements::Null
1789
- - _class: Expressir::Model::Procedure
1778
+ - _class: Expressir::Model::Declarations::Procedure
1790
1779
  id: call_statement
1791
1780
  statements:
1792
- - _class: Expressir::Model::Statements::Call
1793
- ref:
1794
- _class: Expressir::Model::Expressions::SimpleReference
1781
+ - _class: Expressir::Model::Statements::ProcedureCall
1782
+ procedure:
1783
+ _class: Expressir::Model::References::SimpleReference
1795
1784
  id: empty_procedure
1796
1785
  base_path: syntax_schema.empty_procedure
1797
- - _class: Expressir::Model::Procedure
1786
+ - _class: Expressir::Model::Declarations::Procedure
1798
1787
  id: call_parameter_statement
1799
1788
  statements:
1800
- - _class: Expressir::Model::Statements::Call
1801
- ref:
1802
- _class: Expressir::Model::Expressions::SimpleReference
1789
+ - _class: Expressir::Model::Statements::ProcedureCall
1790
+ procedure:
1791
+ _class: Expressir::Model::References::SimpleReference
1803
1792
  id: empty_procedure
1804
1793
  base_path: syntax_schema.empty_procedure
1805
1794
  parameters:
1806
1795
  - _class: Expressir::Model::Literals::Logical
1807
1796
  value: :TRUE
1808
- - _class: Expressir::Model::Procedure
1797
+ - _class: Expressir::Model::Declarations::Procedure
1809
1798
  id: call_parameter2_statement
1810
1799
  statements:
1811
- - _class: Expressir::Model::Statements::Call
1812
- ref:
1813
- _class: Expressir::Model::Expressions::SimpleReference
1800
+ - _class: Expressir::Model::Statements::ProcedureCall
1801
+ procedure:
1802
+ _class: Expressir::Model::References::SimpleReference
1814
1803
  id: empty_procedure
1815
1804
  base_path: syntax_schema.empty_procedure
1816
1805
  parameters:
@@ -1818,33 +1807,33 @@ schemas:
1818
1807
  value: :TRUE
1819
1808
  - _class: Expressir::Model::Literals::Logical
1820
1809
  value: :TRUE
1821
- - _class: Expressir::Model::Procedure
1810
+ - _class: Expressir::Model::Declarations::Procedure
1822
1811
  id: call_insert_statement
1823
1812
  statements:
1824
- - _class: Expressir::Model::Statements::Call
1825
- ref:
1826
- _class: Expressir::Model::Expressions::SimpleReference
1813
+ - _class: Expressir::Model::Statements::ProcedureCall
1814
+ procedure:
1815
+ _class: Expressir::Model::References::SimpleReference
1827
1816
  id: INSERT
1828
1817
  parameters:
1829
1818
  - _class: Expressir::Model::Literals::Logical
1830
1819
  value: :TRUE
1831
- - _class: Expressir::Model::Procedure
1820
+ - _class: Expressir::Model::Declarations::Procedure
1832
1821
  id: call_remove_statement
1833
1822
  statements:
1834
- - _class: Expressir::Model::Statements::Call
1835
- ref:
1836
- _class: Expressir::Model::Expressions::SimpleReference
1823
+ - _class: Expressir::Model::Statements::ProcedureCall
1824
+ procedure:
1825
+ _class: Expressir::Model::References::SimpleReference
1837
1826
  id: REMOVE
1838
1827
  parameters:
1839
1828
  - _class: Expressir::Model::Literals::Logical
1840
1829
  value: :TRUE
1841
- - _class: Expressir::Model::Procedure
1830
+ - _class: Expressir::Model::Declarations::Procedure
1842
1831
  id: repeat_statement
1843
1832
  statements:
1844
1833
  - _class: Expressir::Model::Statements::Repeat
1845
1834
  statements:
1846
1835
  - _class: Expressir::Model::Statements::Null
1847
- - _class: Expressir::Model::Procedure
1836
+ - _class: Expressir::Model::Declarations::Procedure
1848
1837
  id: repeat_variable_statement
1849
1838
  statements:
1850
1839
  - _class: Expressir::Model::Statements::Repeat
@@ -1857,7 +1846,7 @@ schemas:
1857
1846
  value: '9'
1858
1847
  statements:
1859
1848
  - _class: Expressir::Model::Statements::Null
1860
- - _class: Expressir::Model::Procedure
1849
+ - _class: Expressir::Model::Declarations::Procedure
1861
1850
  id: repeat_variable_increment_statement
1862
1851
  statements:
1863
1852
  - _class: Expressir::Model::Statements::Repeat
@@ -1873,7 +1862,7 @@ schemas:
1873
1862
  value: '2'
1874
1863
  statements:
1875
1864
  - _class: Expressir::Model::Statements::Null
1876
- - _class: Expressir::Model::Procedure
1865
+ - _class: Expressir::Model::Declarations::Procedure
1877
1866
  id: repeat_while_statement
1878
1867
  statements:
1879
1868
  - _class: Expressir::Model::Statements::Repeat
@@ -1882,7 +1871,7 @@ schemas:
1882
1871
  value: :TRUE
1883
1872
  statements:
1884
1873
  - _class: Expressir::Model::Statements::Null
1885
- - _class: Expressir::Model::Procedure
1874
+ - _class: Expressir::Model::Declarations::Procedure
1886
1875
  id: repeat_until_statement
1887
1876
  statements:
1888
1877
  - _class: Expressir::Model::Statements::Repeat
@@ -1891,93 +1880,93 @@ schemas:
1891
1880
  value: :TRUE
1892
1881
  statements:
1893
1882
  - _class: Expressir::Model::Statements::Null
1894
- - _class: Expressir::Model::Procedure
1883
+ - _class: Expressir::Model::Declarations::Procedure
1895
1884
  id: return_statement
1896
1885
  statements:
1897
1886
  - _class: Expressir::Model::Statements::Return
1898
- - _class: Expressir::Model::Procedure
1887
+ - _class: Expressir::Model::Declarations::Procedure
1899
1888
  id: return_expression_statement
1900
1889
  statements:
1901
1890
  - _class: Expressir::Model::Statements::Return
1902
1891
  expression:
1903
1892
  _class: Expressir::Model::Literals::Logical
1904
1893
  value: :TRUE
1905
- - _class: Expressir::Model::Procedure
1894
+ - _class: Expressir::Model::Declarations::Procedure
1906
1895
  id: skip_statement
1907
1896
  statements:
1908
1897
  - _class: Expressir::Model::Statements::Skip
1909
- - _class: Expressir::Model::Procedure
1898
+ - _class: Expressir::Model::Declarations::Procedure
1910
1899
  id: types
1911
1900
  types:
1912
- - _class: Expressir::Model::Type
1901
+ - _class: Expressir::Model::Declarations::Type
1913
1902
  id: binary_type
1914
- type:
1915
- _class: Expressir::Model::Types::Binary
1916
- - _class: Expressir::Model::Type
1903
+ underlying_type:
1904
+ _class: Expressir::Model::DataTypes::Binary
1905
+ - _class: Expressir::Model::Declarations::Type
1917
1906
  id: binary_width_type
1918
- type:
1919
- _class: Expressir::Model::Types::Binary
1907
+ underlying_type:
1908
+ _class: Expressir::Model::DataTypes::Binary
1920
1909
  width:
1921
1910
  _class: Expressir::Model::Literals::Integer
1922
1911
  value: '3'
1923
- - _class: Expressir::Model::Type
1912
+ - _class: Expressir::Model::Declarations::Type
1924
1913
  id: binary_width_fixed_type
1925
- type:
1926
- _class: Expressir::Model::Types::Binary
1914
+ underlying_type:
1915
+ _class: Expressir::Model::DataTypes::Binary
1927
1916
  width:
1928
1917
  _class: Expressir::Model::Literals::Integer
1929
1918
  value: '3'
1930
1919
  fixed: true
1931
- - _class: Expressir::Model::Type
1920
+ - _class: Expressir::Model::Declarations::Type
1932
1921
  id: boolean_type
1933
- type:
1934
- _class: Expressir::Model::Types::Boolean
1935
- - _class: Expressir::Model::Type
1922
+ underlying_type:
1923
+ _class: Expressir::Model::DataTypes::Boolean
1924
+ - _class: Expressir::Model::Declarations::Type
1936
1925
  id: integer_type
1937
- type:
1938
- _class: Expressir::Model::Types::Integer
1939
- - _class: Expressir::Model::Type
1926
+ underlying_type:
1927
+ _class: Expressir::Model::DataTypes::Integer
1928
+ - _class: Expressir::Model::Declarations::Type
1940
1929
  id: logical_type
1941
- type:
1942
- _class: Expressir::Model::Types::Logical
1943
- - _class: Expressir::Model::Type
1930
+ underlying_type:
1931
+ _class: Expressir::Model::DataTypes::Logical
1932
+ - _class: Expressir::Model::Declarations::Type
1944
1933
  id: number_type
1945
- type:
1946
- _class: Expressir::Model::Types::Number
1947
- - _class: Expressir::Model::Type
1934
+ underlying_type:
1935
+ _class: Expressir::Model::DataTypes::Number
1936
+ - _class: Expressir::Model::Declarations::Type
1948
1937
  id: real_type
1949
- type:
1950
- _class: Expressir::Model::Types::Real
1951
- - _class: Expressir::Model::Type
1938
+ underlying_type:
1939
+ _class: Expressir::Model::DataTypes::Real
1940
+ - _class: Expressir::Model::Declarations::Type
1952
1941
  id: real_precision_type
1953
- type:
1954
- _class: Expressir::Model::Types::Real
1942
+ underlying_type:
1943
+ _class: Expressir::Model::DataTypes::Real
1955
1944
  precision:
1956
1945
  _class: Expressir::Model::Literals::Integer
1957
1946
  value: '3'
1958
- - _class: Expressir::Model::Type
1947
+ - _class: Expressir::Model::Declarations::Type
1959
1948
  id: string_type
1960
- type:
1961
- _class: Expressir::Model::Types::String
1962
- - _class: Expressir::Model::Type
1949
+ underlying_type:
1950
+ _class: Expressir::Model::DataTypes::String
1951
+ - _class: Expressir::Model::Declarations::Type
1963
1952
  id: string_width_type
1964
- type:
1965
- _class: Expressir::Model::Types::String
1953
+ underlying_type:
1954
+ _class: Expressir::Model::DataTypes::String
1966
1955
  width:
1967
1956
  _class: Expressir::Model::Literals::Integer
1968
1957
  value: '3'
1969
- - _class: Expressir::Model::Type
1958
+ - _class: Expressir::Model::Declarations::Type
1970
1959
  id: string_width_fixed_type
1971
- type:
1972
- _class: Expressir::Model::Types::String
1960
+ underlying_type:
1961
+ _class: Expressir::Model::DataTypes::String
1973
1962
  width:
1974
1963
  _class: Expressir::Model::Literals::Integer
1975
1964
  value: '3'
1976
1965
  fixed: true
1977
- - _class: Expressir::Model::Type
1966
+ - _class: Expressir::Model::Declarations::Type
1978
1967
  id: array_type
1979
- type:
1980
- _class: Expressir::Model::Types::Array
1968
+ underlying_type:
1969
+ _class: Expressir::Model::DataTypes::Array
1981
1970
  bound1:
1982
1971
  _class: Expressir::Model::Literals::Integer
1983
1972
  value: '1'
@@ -1985,11 +1974,11 @@ schemas:
1985
1974
  _class: Expressir::Model::Literals::Integer
1986
1975
  value: '9'
1987
1976
  base_type:
1988
- _class: Expressir::Model::Types::String
1989
- - _class: Expressir::Model::Type
1977
+ _class: Expressir::Model::DataTypes::String
1978
+ - _class: Expressir::Model::Declarations::Type
1990
1979
  id: array_optional_type
1991
- type:
1992
- _class: Expressir::Model::Types::Array
1980
+ underlying_type:
1981
+ _class: Expressir::Model::DataTypes::Array
1993
1982
  bound1:
1994
1983
  _class: Expressir::Model::Literals::Integer
1995
1984
  value: '1'
@@ -1998,11 +1987,11 @@ schemas:
1998
1987
  value: '9'
1999
1988
  optional: true
2000
1989
  base_type:
2001
- _class: Expressir::Model::Types::String
2002
- - _class: Expressir::Model::Type
1990
+ _class: Expressir::Model::DataTypes::String
1991
+ - _class: Expressir::Model::Declarations::Type
2003
1992
  id: array_unique_type
2004
- type:
2005
- _class: Expressir::Model::Types::Array
1993
+ underlying_type:
1994
+ _class: Expressir::Model::DataTypes::Array
2006
1995
  bound1:
2007
1996
  _class: Expressir::Model::Literals::Integer
2008
1997
  value: '1'
@@ -2011,11 +2000,11 @@ schemas:
2011
2000
  value: '9'
2012
2001
  unique: true
2013
2002
  base_type:
2014
- _class: Expressir::Model::Types::String
2015
- - _class: Expressir::Model::Type
2003
+ _class: Expressir::Model::DataTypes::String
2004
+ - _class: Expressir::Model::Declarations::Type
2016
2005
  id: array_optional_unique_type
2017
- type:
2018
- _class: Expressir::Model::Types::Array
2006
+ underlying_type:
2007
+ _class: Expressir::Model::DataTypes::Array
2019
2008
  bound1:
2020
2009
  _class: Expressir::Model::Literals::Integer
2021
2010
  value: '1'
@@ -2025,17 +2014,17 @@ schemas:
2025
2014
  optional: true
2026
2015
  unique: true
2027
2016
  base_type:
2028
- _class: Expressir::Model::Types::String
2029
- - _class: Expressir::Model::Type
2017
+ _class: Expressir::Model::DataTypes::String
2018
+ - _class: Expressir::Model::Declarations::Type
2030
2019
  id: bag_type
2031
- type:
2032
- _class: Expressir::Model::Types::Bag
2020
+ underlying_type:
2021
+ _class: Expressir::Model::DataTypes::Bag
2033
2022
  base_type:
2034
- _class: Expressir::Model::Types::String
2035
- - _class: Expressir::Model::Type
2023
+ _class: Expressir::Model::DataTypes::String
2024
+ - _class: Expressir::Model::Declarations::Type
2036
2025
  id: bag_bound_type
2037
- type:
2038
- _class: Expressir::Model::Types::Bag
2026
+ underlying_type:
2027
+ _class: Expressir::Model::DataTypes::Bag
2039
2028
  bound1:
2040
2029
  _class: Expressir::Model::Literals::Integer
2041
2030
  value: '1'
@@ -2043,17 +2032,17 @@ schemas:
2043
2032
  _class: Expressir::Model::Literals::Integer
2044
2033
  value: '9'
2045
2034
  base_type:
2046
- _class: Expressir::Model::Types::String
2047
- - _class: Expressir::Model::Type
2035
+ _class: Expressir::Model::DataTypes::String
2036
+ - _class: Expressir::Model::Declarations::Type
2048
2037
  id: list_type
2049
- type:
2050
- _class: Expressir::Model::Types::List
2038
+ underlying_type:
2039
+ _class: Expressir::Model::DataTypes::List
2051
2040
  base_type:
2052
- _class: Expressir::Model::Types::String
2053
- - _class: Expressir::Model::Type
2041
+ _class: Expressir::Model::DataTypes::String
2042
+ - _class: Expressir::Model::Declarations::Type
2054
2043
  id: list_bound_type
2055
- type:
2056
- _class: Expressir::Model::Types::List
2044
+ underlying_type:
2045
+ _class: Expressir::Model::DataTypes::List
2057
2046
  bound1:
2058
2047
  _class: Expressir::Model::Literals::Integer
2059
2048
  value: '1'
@@ -2061,18 +2050,18 @@ schemas:
2061
2050
  _class: Expressir::Model::Literals::Integer
2062
2051
  value: '9'
2063
2052
  base_type:
2064
- _class: Expressir::Model::Types::String
2065
- - _class: Expressir::Model::Type
2053
+ _class: Expressir::Model::DataTypes::String
2054
+ - _class: Expressir::Model::Declarations::Type
2066
2055
  id: list_unique_type
2067
- type:
2068
- _class: Expressir::Model::Types::List
2056
+ underlying_type:
2057
+ _class: Expressir::Model::DataTypes::List
2069
2058
  unique: true
2070
2059
  base_type:
2071
- _class: Expressir::Model::Types::String
2072
- - _class: Expressir::Model::Type
2060
+ _class: Expressir::Model::DataTypes::String
2061
+ - _class: Expressir::Model::Declarations::Type
2073
2062
  id: list_bound_unique_type
2074
- type:
2075
- _class: Expressir::Model::Types::List
2063
+ underlying_type:
2064
+ _class: Expressir::Model::DataTypes::List
2076
2065
  bound1:
2077
2066
  _class: Expressir::Model::Literals::Integer
2078
2067
  value: '1'
@@ -2081,17 +2070,17 @@ schemas:
2081
2070
  value: '9'
2082
2071
  unique: true
2083
2072
  base_type:
2084
- _class: Expressir::Model::Types::String
2085
- - _class: Expressir::Model::Type
2073
+ _class: Expressir::Model::DataTypes::String
2074
+ - _class: Expressir::Model::Declarations::Type
2086
2075
  id: set_type
2087
- type:
2088
- _class: Expressir::Model::Types::Set
2076
+ underlying_type:
2077
+ _class: Expressir::Model::DataTypes::Set
2089
2078
  base_type:
2090
- _class: Expressir::Model::Types::String
2091
- - _class: Expressir::Model::Type
2079
+ _class: Expressir::Model::DataTypes::String
2080
+ - _class: Expressir::Model::Declarations::Type
2092
2081
  id: set_bound_type
2093
- type:
2094
- _class: Expressir::Model::Types::Set
2082
+ underlying_type:
2083
+ _class: Expressir::Model::DataTypes::Set
2095
2084
  bound1:
2096
2085
  _class: Expressir::Model::Literals::Integer
2097
2086
  value: '1'
@@ -2099,617 +2088,617 @@ schemas:
2099
2088
  _class: Expressir::Model::Literals::Integer
2100
2089
  value: '9'
2101
2090
  base_type:
2102
- _class: Expressir::Model::Types::String
2103
- - _class: Expressir::Model::Type
2091
+ _class: Expressir::Model::DataTypes::String
2092
+ - _class: Expressir::Model::Declarations::Type
2104
2093
  id: select_type
2105
- type:
2106
- _class: Expressir::Model::Types::Select
2107
- - _class: Expressir::Model::Type
2094
+ underlying_type:
2095
+ _class: Expressir::Model::DataTypes::Select
2096
+ - _class: Expressir::Model::Declarations::Type
2108
2097
  id: select_extensible_type
2109
- type:
2110
- _class: Expressir::Model::Types::Select
2098
+ underlying_type:
2099
+ _class: Expressir::Model::DataTypes::Select
2111
2100
  extensible: true
2112
- - _class: Expressir::Model::Type
2101
+ - _class: Expressir::Model::Declarations::Type
2113
2102
  id: select_extensible_generic_entity_type
2114
- type:
2115
- _class: Expressir::Model::Types::Select
2103
+ underlying_type:
2104
+ _class: Expressir::Model::DataTypes::Select
2116
2105
  extensible: true
2117
2106
  generic_entity: true
2118
- - _class: Expressir::Model::Type
2119
- id: select_list_type
2120
- type:
2121
- _class: Expressir::Model::Types::Select
2107
+ - _class: Expressir::Model::Declarations::Type
2108
+ id: select_item_type
2109
+ underlying_type:
2110
+ _class: Expressir::Model::DataTypes::Select
2122
2111
  items:
2123
- - _class: Expressir::Model::Expressions::SimpleReference
2112
+ - _class: Expressir::Model::References::SimpleReference
2124
2113
  id: empty_type
2125
2114
  base_path: syntax_schema.empty_type
2126
- - _class: Expressir::Model::Type
2127
- id: select_list_multiple_type
2128
- type:
2129
- _class: Expressir::Model::Types::Select
2115
+ - _class: Expressir::Model::Declarations::Type
2116
+ id: select_multiple_item_type
2117
+ underlying_type:
2118
+ _class: Expressir::Model::DataTypes::Select
2130
2119
  items:
2131
- - _class: Expressir::Model::Expressions::SimpleReference
2120
+ - _class: Expressir::Model::References::SimpleReference
2132
2121
  id: empty_type
2133
2122
  base_path: syntax_schema.empty_type
2134
- - _class: Expressir::Model::Expressions::SimpleReference
2123
+ - _class: Expressir::Model::References::SimpleReference
2135
2124
  id: empty_type
2136
2125
  base_path: syntax_schema.empty_type
2137
- - _class: Expressir::Model::Type
2138
- id: select_extension_type_ref_type
2139
- type:
2140
- _class: Expressir::Model::Types::Select
2141
- extension_type:
2142
- _class: Expressir::Model::Expressions::SimpleReference
2126
+ - _class: Expressir::Model::Declarations::Type
2127
+ id: select_based_on_type
2128
+ underlying_type:
2129
+ _class: Expressir::Model::DataTypes::Select
2130
+ based_on:
2131
+ _class: Expressir::Model::References::SimpleReference
2143
2132
  id: select_type
2144
2133
  base_path: syntax_schema.types.select_type
2145
- - _class: Expressir::Model::Type
2146
- id: select_extension_type_ref_list_type
2147
- type:
2148
- _class: Expressir::Model::Types::Select
2149
- extension_type:
2150
- _class: Expressir::Model::Expressions::SimpleReference
2134
+ - _class: Expressir::Model::Declarations::Type
2135
+ id: select_based_on_item_type
2136
+ underlying_type:
2137
+ _class: Expressir::Model::DataTypes::Select
2138
+ based_on:
2139
+ _class: Expressir::Model::References::SimpleReference
2151
2140
  id: select_type
2152
2141
  base_path: syntax_schema.types.select_type
2153
- extension_items:
2154
- - _class: Expressir::Model::Expressions::SimpleReference
2142
+ items:
2143
+ - _class: Expressir::Model::References::SimpleReference
2155
2144
  id: empty_type
2156
2145
  base_path: syntax_schema.empty_type
2157
- - _class: Expressir::Model::Type
2158
- id: select_extension_type_ref_list_multiple_type
2159
- type:
2160
- _class: Expressir::Model::Types::Select
2161
- extension_type:
2162
- _class: Expressir::Model::Expressions::SimpleReference
2146
+ - _class: Expressir::Model::Declarations::Type
2147
+ id: select_based_on_multiple_item_type
2148
+ underlying_type:
2149
+ _class: Expressir::Model::DataTypes::Select
2150
+ based_on:
2151
+ _class: Expressir::Model::References::SimpleReference
2163
2152
  id: select_type
2164
2153
  base_path: syntax_schema.types.select_type
2165
- extension_items:
2166
- - _class: Expressir::Model::Expressions::SimpleReference
2154
+ items:
2155
+ - _class: Expressir::Model::References::SimpleReference
2167
2156
  id: empty_type
2168
2157
  base_path: syntax_schema.empty_type
2169
- - _class: Expressir::Model::Expressions::SimpleReference
2158
+ - _class: Expressir::Model::References::SimpleReference
2170
2159
  id: empty_type
2171
2160
  base_path: syntax_schema.empty_type
2172
- - _class: Expressir::Model::Type
2161
+ - _class: Expressir::Model::Declarations::Type
2173
2162
  id: enumeration_type
2174
- type:
2175
- _class: Expressir::Model::Types::Enumeration
2176
- - _class: Expressir::Model::Type
2163
+ underlying_type:
2164
+ _class: Expressir::Model::DataTypes::Enumeration
2165
+ - _class: Expressir::Model::Declarations::Type
2177
2166
  id: enumeration_extensible_type
2178
- type:
2179
- _class: Expressir::Model::Types::Enumeration
2167
+ underlying_type:
2168
+ _class: Expressir::Model::DataTypes::Enumeration
2180
2169
  extensible: true
2181
- - _class: Expressir::Model::Type
2182
- id: enumeration_list_type
2183
- type:
2184
- _class: Expressir::Model::Types::Enumeration
2170
+ - _class: Expressir::Model::Declarations::Type
2171
+ id: enumeration_item_type
2172
+ underlying_type:
2173
+ _class: Expressir::Model::DataTypes::Enumeration
2185
2174
  items:
2186
- - _class: Expressir::Model::EnumerationItem
2175
+ - _class: Expressir::Model::DataTypes::EnumerationItem
2187
2176
  id: test
2188
- - _class: Expressir::Model::Type
2189
- id: enumeration_list_multiple_type
2190
- type:
2191
- _class: Expressir::Model::Types::Enumeration
2177
+ - _class: Expressir::Model::Declarations::Type
2178
+ id: enumeration_multiple_item_type
2179
+ underlying_type:
2180
+ _class: Expressir::Model::DataTypes::Enumeration
2192
2181
  items:
2193
- - _class: Expressir::Model::EnumerationItem
2182
+ - _class: Expressir::Model::DataTypes::EnumerationItem
2194
2183
  id: test
2195
- - _class: Expressir::Model::EnumerationItem
2184
+ - _class: Expressir::Model::DataTypes::EnumerationItem
2196
2185
  id: test2
2197
- - _class: Expressir::Model::Type
2198
- id: enumeration_extension_type_ref_type
2199
- type:
2200
- _class: Expressir::Model::Types::Enumeration
2201
- extension_type:
2202
- _class: Expressir::Model::Expressions::SimpleReference
2186
+ - _class: Expressir::Model::Declarations::Type
2187
+ id: enumeration_based_on_type
2188
+ underlying_type:
2189
+ _class: Expressir::Model::DataTypes::Enumeration
2190
+ based_on:
2191
+ _class: Expressir::Model::References::SimpleReference
2203
2192
  id: enumeration_type
2204
2193
  base_path: syntax_schema.types.enumeration_type
2205
- - _class: Expressir::Model::Type
2206
- id: enumeration_extension_type_ref_list_type
2207
- type:
2208
- _class: Expressir::Model::Types::Enumeration
2209
- extension_type:
2210
- _class: Expressir::Model::Expressions::SimpleReference
2194
+ - _class: Expressir::Model::Declarations::Type
2195
+ id: enumeration_based_on_item_type
2196
+ underlying_type:
2197
+ _class: Expressir::Model::DataTypes::Enumeration
2198
+ based_on:
2199
+ _class: Expressir::Model::References::SimpleReference
2211
2200
  id: enumeration_type
2212
2201
  base_path: syntax_schema.types.enumeration_type
2213
- extension_items:
2214
- - _class: Expressir::Model::EnumerationItem
2202
+ items:
2203
+ - _class: Expressir::Model::DataTypes::EnumerationItem
2215
2204
  id: test
2216
- - _class: Expressir::Model::Type
2217
- id: enumeration_extension_type_ref_list_multiple_type
2218
- type:
2219
- _class: Expressir::Model::Types::Enumeration
2220
- extension_type:
2221
- _class: Expressir::Model::Expressions::SimpleReference
2205
+ - _class: Expressir::Model::Declarations::Type
2206
+ id: enumeration_based_on_multiple_item_type
2207
+ underlying_type:
2208
+ _class: Expressir::Model::DataTypes::Enumeration
2209
+ based_on:
2210
+ _class: Expressir::Model::References::SimpleReference
2222
2211
  id: enumeration_type
2223
2212
  base_path: syntax_schema.types.enumeration_type
2224
- extension_items:
2225
- - _class: Expressir::Model::EnumerationItem
2213
+ items:
2214
+ - _class: Expressir::Model::DataTypes::EnumerationItem
2226
2215
  id: test
2227
- - _class: Expressir::Model::EnumerationItem
2216
+ - _class: Expressir::Model::DataTypes::EnumerationItem
2228
2217
  id: test2
2229
2218
  functions:
2230
- - _class: Expressir::Model::Function
2219
+ - _class: Expressir::Model::Declarations::Function
2231
2220
  id: generic_type
2232
2221
  return_type:
2233
- _class: Expressir::Model::Types::Generic
2222
+ _class: Expressir::Model::DataTypes::Generic
2234
2223
  statements:
2235
2224
  - _class: Expressir::Model::Statements::Null
2236
- - _class: Expressir::Model::Function
2225
+ - _class: Expressir::Model::Declarations::Function
2237
2226
  id: generic_label_type
2238
2227
  return_type:
2239
- _class: Expressir::Model::Types::Generic
2228
+ _class: Expressir::Model::DataTypes::Generic
2240
2229
  id: label
2241
2230
  statements:
2242
2231
  - _class: Expressir::Model::Statements::Null
2243
- - _class: Expressir::Model::Function
2232
+ - _class: Expressir::Model::Declarations::Function
2244
2233
  id: generic_entity_type
2245
2234
  return_type:
2246
- _class: Expressir::Model::Types::GenericEntity
2235
+ _class: Expressir::Model::DataTypes::GenericEntity
2247
2236
  statements:
2248
2237
  - _class: Expressir::Model::Statements::Null
2249
- - _class: Expressir::Model::Function
2238
+ - _class: Expressir::Model::Declarations::Function
2250
2239
  id: generic_entity_label_type
2251
2240
  return_type:
2252
- _class: Expressir::Model::Types::GenericEntity
2241
+ _class: Expressir::Model::DataTypes::GenericEntity
2253
2242
  id: label
2254
2243
  statements:
2255
2244
  - _class: Expressir::Model::Statements::Null
2256
- - _class: Expressir::Model::Procedure
2245
+ - _class: Expressir::Model::Declarations::Procedure
2257
2246
  id: expressions
2258
2247
  variables:
2259
- - _class: Expressir::Model::Variable
2248
+ - _class: Expressir::Model::Declarations::Variable
2260
2249
  id: binary_expression
2261
2250
  type:
2262
- _class: Expressir::Model::Types::Boolean
2251
+ _class: Expressir::Model::DataTypes::Boolean
2263
2252
  expression:
2264
2253
  _class: Expressir::Model::Literals::Binary
2265
2254
  value: '011110000111100001111000'
2266
- - _class: Expressir::Model::Variable
2255
+ - _class: Expressir::Model::Declarations::Variable
2267
2256
  id: integer_expression
2268
2257
  type:
2269
- _class: Expressir::Model::Types::Boolean
2258
+ _class: Expressir::Model::DataTypes::Boolean
2270
2259
  expression:
2271
2260
  _class: Expressir::Model::Literals::Integer
2272
2261
  value: '999'
2273
- - _class: Expressir::Model::Variable
2262
+ - _class: Expressir::Model::Declarations::Variable
2274
2263
  id: true_logical_expression
2275
2264
  type:
2276
- _class: Expressir::Model::Types::Boolean
2265
+ _class: Expressir::Model::DataTypes::Boolean
2277
2266
  expression:
2278
2267
  _class: Expressir::Model::Literals::Logical
2279
2268
  value: :TRUE
2280
- - _class: Expressir::Model::Variable
2269
+ - _class: Expressir::Model::Declarations::Variable
2281
2270
  id: false_logical_expression
2282
2271
  type:
2283
- _class: Expressir::Model::Types::Boolean
2272
+ _class: Expressir::Model::DataTypes::Boolean
2284
2273
  expression:
2285
2274
  _class: Expressir::Model::Literals::Logical
2286
2275
  value: :FALSE
2287
- - _class: Expressir::Model::Variable
2276
+ - _class: Expressir::Model::Declarations::Variable
2288
2277
  id: unknown_logical_expression
2289
2278
  type:
2290
- _class: Expressir::Model::Types::Boolean
2279
+ _class: Expressir::Model::DataTypes::Boolean
2291
2280
  expression:
2292
2281
  _class: Expressir::Model::Literals::Logical
2293
2282
  value: :UNKNOWN
2294
- - _class: Expressir::Model::Variable
2283
+ - _class: Expressir::Model::Declarations::Variable
2295
2284
  id: real_expression
2296
2285
  type:
2297
- _class: Expressir::Model::Types::Boolean
2286
+ _class: Expressir::Model::DataTypes::Boolean
2298
2287
  expression:
2299
2288
  _class: Expressir::Model::Literals::Real
2300
2289
  value: '999.999'
2301
- - _class: Expressir::Model::Variable
2290
+ - _class: Expressir::Model::Declarations::Variable
2302
2291
  id: simple_string_expression
2303
2292
  type:
2304
- _class: Expressir::Model::Types::Boolean
2293
+ _class: Expressir::Model::DataTypes::Boolean
2305
2294
  expression:
2306
2295
  _class: Expressir::Model::Literals::String
2307
2296
  value: xxx
2308
- - _class: Expressir::Model::Variable
2297
+ - _class: Expressir::Model::Declarations::Variable
2309
2298
  id: utf8_simple_string_expression
2310
2299
  type:
2311
- _class: Expressir::Model::Types::Boolean
2300
+ _class: Expressir::Model::DataTypes::Boolean
2312
2301
  expression:
2313
2302
  _class: Expressir::Model::Literals::String
2314
2303
  value: 'UTF8 test: Příliš žluťoučký kůň úpěl ďábelské ódy.'
2315
- - _class: Expressir::Model::Variable
2304
+ - _class: Expressir::Model::Declarations::Variable
2316
2305
  id: encoded_string_expression
2317
2306
  type:
2318
- _class: Expressir::Model::Types::Boolean
2307
+ _class: Expressir::Model::DataTypes::Boolean
2319
2308
  expression:
2320
2309
  _class: Expressir::Model::Literals::String
2321
2310
  value: '000000780000007800000078'
2322
2311
  encoded: true
2323
- - _class: Expressir::Model::Variable
2312
+ - _class: Expressir::Model::Declarations::Variable
2324
2313
  id: const_e_expression
2325
2314
  type:
2326
- _class: Expressir::Model::Types::Boolean
2315
+ _class: Expressir::Model::DataTypes::Boolean
2327
2316
  expression:
2328
- _class: Expressir::Model::Expressions::SimpleReference
2317
+ _class: Expressir::Model::References::SimpleReference
2329
2318
  id: CONST_E
2330
- - _class: Expressir::Model::Variable
2319
+ - _class: Expressir::Model::Declarations::Variable
2331
2320
  id: indeterminate_expression
2332
2321
  type:
2333
- _class: Expressir::Model::Types::Boolean
2322
+ _class: Expressir::Model::DataTypes::Boolean
2334
2323
  expression:
2335
- _class: Expressir::Model::Expressions::SimpleReference
2324
+ _class: Expressir::Model::References::SimpleReference
2336
2325
  id: "?"
2337
- - _class: Expressir::Model::Variable
2326
+ - _class: Expressir::Model::Declarations::Variable
2338
2327
  id: pi_expression
2339
2328
  type:
2340
- _class: Expressir::Model::Types::Boolean
2329
+ _class: Expressir::Model::DataTypes::Boolean
2341
2330
  expression:
2342
- _class: Expressir::Model::Expressions::SimpleReference
2331
+ _class: Expressir::Model::References::SimpleReference
2343
2332
  id: PI
2344
- - _class: Expressir::Model::Variable
2333
+ - _class: Expressir::Model::Declarations::Variable
2345
2334
  id: self_expression
2346
2335
  type:
2347
- _class: Expressir::Model::Types::Boolean
2336
+ _class: Expressir::Model::DataTypes::Boolean
2348
2337
  expression:
2349
- _class: Expressir::Model::Expressions::SimpleReference
2338
+ _class: Expressir::Model::References::SimpleReference
2350
2339
  id: SELF
2351
- - _class: Expressir::Model::Variable
2340
+ - _class: Expressir::Model::Declarations::Variable
2352
2341
  id: abs_expression
2353
2342
  type:
2354
- _class: Expressir::Model::Types::Boolean
2343
+ _class: Expressir::Model::DataTypes::Boolean
2355
2344
  expression:
2356
- _class: Expressir::Model::Expressions::Call
2357
- ref:
2358
- _class: Expressir::Model::Expressions::SimpleReference
2345
+ _class: Expressir::Model::Expressions::FunctionCall
2346
+ function:
2347
+ _class: Expressir::Model::References::SimpleReference
2359
2348
  id: ABS
2360
2349
  parameters:
2361
2350
  - _class: Expressir::Model::Literals::Logical
2362
2351
  value: :TRUE
2363
- - _class: Expressir::Model::Variable
2352
+ - _class: Expressir::Model::Declarations::Variable
2364
2353
  id: acos_expression
2365
2354
  type:
2366
- _class: Expressir::Model::Types::Boolean
2355
+ _class: Expressir::Model::DataTypes::Boolean
2367
2356
  expression:
2368
- _class: Expressir::Model::Expressions::Call
2369
- ref:
2370
- _class: Expressir::Model::Expressions::SimpleReference
2357
+ _class: Expressir::Model::Expressions::FunctionCall
2358
+ function:
2359
+ _class: Expressir::Model::References::SimpleReference
2371
2360
  id: ACOS
2372
2361
  parameters:
2373
2362
  - _class: Expressir::Model::Literals::Logical
2374
2363
  value: :TRUE
2375
- - _class: Expressir::Model::Variable
2364
+ - _class: Expressir::Model::Declarations::Variable
2376
2365
  id: asin_expression
2377
2366
  type:
2378
- _class: Expressir::Model::Types::Boolean
2367
+ _class: Expressir::Model::DataTypes::Boolean
2379
2368
  expression:
2380
- _class: Expressir::Model::Expressions::Call
2381
- ref:
2382
- _class: Expressir::Model::Expressions::SimpleReference
2369
+ _class: Expressir::Model::Expressions::FunctionCall
2370
+ function:
2371
+ _class: Expressir::Model::References::SimpleReference
2383
2372
  id: ASIN
2384
2373
  parameters:
2385
2374
  - _class: Expressir::Model::Literals::Logical
2386
2375
  value: :TRUE
2387
- - _class: Expressir::Model::Variable
2376
+ - _class: Expressir::Model::Declarations::Variable
2388
2377
  id: atan_expression
2389
2378
  type:
2390
- _class: Expressir::Model::Types::Boolean
2379
+ _class: Expressir::Model::DataTypes::Boolean
2391
2380
  expression:
2392
- _class: Expressir::Model::Expressions::Call
2393
- ref:
2394
- _class: Expressir::Model::Expressions::SimpleReference
2381
+ _class: Expressir::Model::Expressions::FunctionCall
2382
+ function:
2383
+ _class: Expressir::Model::References::SimpleReference
2395
2384
  id: ATAN
2396
2385
  parameters:
2397
2386
  - _class: Expressir::Model::Literals::Logical
2398
2387
  value: :TRUE
2399
- - _class: Expressir::Model::Variable
2388
+ - _class: Expressir::Model::Declarations::Variable
2400
2389
  id: blength_expression
2401
2390
  type:
2402
- _class: Expressir::Model::Types::Boolean
2391
+ _class: Expressir::Model::DataTypes::Boolean
2403
2392
  expression:
2404
- _class: Expressir::Model::Expressions::Call
2405
- ref:
2406
- _class: Expressir::Model::Expressions::SimpleReference
2393
+ _class: Expressir::Model::Expressions::FunctionCall
2394
+ function:
2395
+ _class: Expressir::Model::References::SimpleReference
2407
2396
  id: BLENGTH
2408
2397
  parameters:
2409
2398
  - _class: Expressir::Model::Literals::Logical
2410
2399
  value: :TRUE
2411
- - _class: Expressir::Model::Variable
2400
+ - _class: Expressir::Model::Declarations::Variable
2412
2401
  id: cos_expression
2413
2402
  type:
2414
- _class: Expressir::Model::Types::Boolean
2403
+ _class: Expressir::Model::DataTypes::Boolean
2415
2404
  expression:
2416
- _class: Expressir::Model::Expressions::Call
2417
- ref:
2418
- _class: Expressir::Model::Expressions::SimpleReference
2405
+ _class: Expressir::Model::Expressions::FunctionCall
2406
+ function:
2407
+ _class: Expressir::Model::References::SimpleReference
2419
2408
  id: COS
2420
2409
  parameters:
2421
2410
  - _class: Expressir::Model::Literals::Logical
2422
2411
  value: :TRUE
2423
- - _class: Expressir::Model::Variable
2412
+ - _class: Expressir::Model::Declarations::Variable
2424
2413
  id: exists_expression
2425
2414
  type:
2426
- _class: Expressir::Model::Types::Boolean
2415
+ _class: Expressir::Model::DataTypes::Boolean
2427
2416
  expression:
2428
- _class: Expressir::Model::Expressions::Call
2429
- ref:
2430
- _class: Expressir::Model::Expressions::SimpleReference
2417
+ _class: Expressir::Model::Expressions::FunctionCall
2418
+ function:
2419
+ _class: Expressir::Model::References::SimpleReference
2431
2420
  id: EXISTS
2432
2421
  parameters:
2433
2422
  - _class: Expressir::Model::Literals::Logical
2434
2423
  value: :TRUE
2435
- - _class: Expressir::Model::Variable
2424
+ - _class: Expressir::Model::Declarations::Variable
2436
2425
  id: exp_expression
2437
2426
  type:
2438
- _class: Expressir::Model::Types::Boolean
2427
+ _class: Expressir::Model::DataTypes::Boolean
2439
2428
  expression:
2440
- _class: Expressir::Model::Expressions::Call
2441
- ref:
2442
- _class: Expressir::Model::Expressions::SimpleReference
2429
+ _class: Expressir::Model::Expressions::FunctionCall
2430
+ function:
2431
+ _class: Expressir::Model::References::SimpleReference
2443
2432
  id: EXP
2444
2433
  parameters:
2445
2434
  - _class: Expressir::Model::Literals::Logical
2446
2435
  value: :TRUE
2447
- - _class: Expressir::Model::Variable
2436
+ - _class: Expressir::Model::Declarations::Variable
2448
2437
  id: format_expression
2449
2438
  type:
2450
- _class: Expressir::Model::Types::Boolean
2439
+ _class: Expressir::Model::DataTypes::Boolean
2451
2440
  expression:
2452
- _class: Expressir::Model::Expressions::Call
2453
- ref:
2454
- _class: Expressir::Model::Expressions::SimpleReference
2441
+ _class: Expressir::Model::Expressions::FunctionCall
2442
+ function:
2443
+ _class: Expressir::Model::References::SimpleReference
2455
2444
  id: FORMAT
2456
2445
  parameters:
2457
2446
  - _class: Expressir::Model::Literals::Logical
2458
2447
  value: :TRUE
2459
- - _class: Expressir::Model::Variable
2448
+ - _class: Expressir::Model::Declarations::Variable
2460
2449
  id: hibound_expression
2461
2450
  type:
2462
- _class: Expressir::Model::Types::Boolean
2451
+ _class: Expressir::Model::DataTypes::Boolean
2463
2452
  expression:
2464
- _class: Expressir::Model::Expressions::Call
2465
- ref:
2466
- _class: Expressir::Model::Expressions::SimpleReference
2453
+ _class: Expressir::Model::Expressions::FunctionCall
2454
+ function:
2455
+ _class: Expressir::Model::References::SimpleReference
2467
2456
  id: HIBOUND
2468
2457
  parameters:
2469
2458
  - _class: Expressir::Model::Literals::Logical
2470
2459
  value: :TRUE
2471
- - _class: Expressir::Model::Variable
2460
+ - _class: Expressir::Model::Declarations::Variable
2472
2461
  id: hiindex_expression
2473
2462
  type:
2474
- _class: Expressir::Model::Types::Boolean
2463
+ _class: Expressir::Model::DataTypes::Boolean
2475
2464
  expression:
2476
- _class: Expressir::Model::Expressions::Call
2477
- ref:
2478
- _class: Expressir::Model::Expressions::SimpleReference
2465
+ _class: Expressir::Model::Expressions::FunctionCall
2466
+ function:
2467
+ _class: Expressir::Model::References::SimpleReference
2479
2468
  id: HIINDEX
2480
2469
  parameters:
2481
2470
  - _class: Expressir::Model::Literals::Logical
2482
2471
  value: :TRUE
2483
- - _class: Expressir::Model::Variable
2472
+ - _class: Expressir::Model::Declarations::Variable
2484
2473
  id: length_expression
2485
2474
  type:
2486
- _class: Expressir::Model::Types::Boolean
2475
+ _class: Expressir::Model::DataTypes::Boolean
2487
2476
  expression:
2488
- _class: Expressir::Model::Expressions::Call
2489
- ref:
2490
- _class: Expressir::Model::Expressions::SimpleReference
2477
+ _class: Expressir::Model::Expressions::FunctionCall
2478
+ function:
2479
+ _class: Expressir::Model::References::SimpleReference
2491
2480
  id: LENGTH
2492
2481
  parameters:
2493
2482
  - _class: Expressir::Model::Literals::Logical
2494
2483
  value: :TRUE
2495
- - _class: Expressir::Model::Variable
2484
+ - _class: Expressir::Model::Declarations::Variable
2496
2485
  id: lobound_expression
2497
2486
  type:
2498
- _class: Expressir::Model::Types::Boolean
2487
+ _class: Expressir::Model::DataTypes::Boolean
2499
2488
  expression:
2500
- _class: Expressir::Model::Expressions::Call
2501
- ref:
2502
- _class: Expressir::Model::Expressions::SimpleReference
2489
+ _class: Expressir::Model::Expressions::FunctionCall
2490
+ function:
2491
+ _class: Expressir::Model::References::SimpleReference
2503
2492
  id: LOBOUND
2504
2493
  parameters:
2505
2494
  - _class: Expressir::Model::Literals::Logical
2506
2495
  value: :TRUE
2507
- - _class: Expressir::Model::Variable
2496
+ - _class: Expressir::Model::Declarations::Variable
2508
2497
  id: loindex_expression
2509
2498
  type:
2510
- _class: Expressir::Model::Types::Boolean
2499
+ _class: Expressir::Model::DataTypes::Boolean
2511
2500
  expression:
2512
- _class: Expressir::Model::Expressions::Call
2513
- ref:
2514
- _class: Expressir::Model::Expressions::SimpleReference
2501
+ _class: Expressir::Model::Expressions::FunctionCall
2502
+ function:
2503
+ _class: Expressir::Model::References::SimpleReference
2515
2504
  id: LOINDEX
2516
2505
  parameters:
2517
2506
  - _class: Expressir::Model::Literals::Logical
2518
2507
  value: :TRUE
2519
- - _class: Expressir::Model::Variable
2508
+ - _class: Expressir::Model::Declarations::Variable
2520
2509
  id: log_expression
2521
2510
  type:
2522
- _class: Expressir::Model::Types::Boolean
2511
+ _class: Expressir::Model::DataTypes::Boolean
2523
2512
  expression:
2524
- _class: Expressir::Model::Expressions::Call
2525
- ref:
2526
- _class: Expressir::Model::Expressions::SimpleReference
2513
+ _class: Expressir::Model::Expressions::FunctionCall
2514
+ function:
2515
+ _class: Expressir::Model::References::SimpleReference
2527
2516
  id: LOG
2528
2517
  parameters:
2529
2518
  - _class: Expressir::Model::Literals::Logical
2530
2519
  value: :TRUE
2531
- - _class: Expressir::Model::Variable
2520
+ - _class: Expressir::Model::Declarations::Variable
2532
2521
  id: log2_expression
2533
2522
  type:
2534
- _class: Expressir::Model::Types::Boolean
2523
+ _class: Expressir::Model::DataTypes::Boolean
2535
2524
  expression:
2536
- _class: Expressir::Model::Expressions::Call
2537
- ref:
2538
- _class: Expressir::Model::Expressions::SimpleReference
2525
+ _class: Expressir::Model::Expressions::FunctionCall
2526
+ function:
2527
+ _class: Expressir::Model::References::SimpleReference
2539
2528
  id: LOG2
2540
2529
  parameters:
2541
2530
  - _class: Expressir::Model::Literals::Logical
2542
2531
  value: :TRUE
2543
- - _class: Expressir::Model::Variable
2532
+ - _class: Expressir::Model::Declarations::Variable
2544
2533
  id: log10_expression
2545
2534
  type:
2546
- _class: Expressir::Model::Types::Boolean
2535
+ _class: Expressir::Model::DataTypes::Boolean
2547
2536
  expression:
2548
- _class: Expressir::Model::Expressions::Call
2549
- ref:
2550
- _class: Expressir::Model::Expressions::SimpleReference
2537
+ _class: Expressir::Model::Expressions::FunctionCall
2538
+ function:
2539
+ _class: Expressir::Model::References::SimpleReference
2551
2540
  id: LOG10
2552
2541
  parameters:
2553
2542
  - _class: Expressir::Model::Literals::Logical
2554
2543
  value: :TRUE
2555
- - _class: Expressir::Model::Variable
2544
+ - _class: Expressir::Model::Declarations::Variable
2556
2545
  id: nvl_expression
2557
2546
  type:
2558
- _class: Expressir::Model::Types::Boolean
2547
+ _class: Expressir::Model::DataTypes::Boolean
2559
2548
  expression:
2560
- _class: Expressir::Model::Expressions::Call
2561
- ref:
2562
- _class: Expressir::Model::Expressions::SimpleReference
2549
+ _class: Expressir::Model::Expressions::FunctionCall
2550
+ function:
2551
+ _class: Expressir::Model::References::SimpleReference
2563
2552
  id: NVL
2564
2553
  parameters:
2565
2554
  - _class: Expressir::Model::Literals::Logical
2566
2555
  value: :TRUE
2567
- - _class: Expressir::Model::Variable
2556
+ - _class: Expressir::Model::Declarations::Variable
2568
2557
  id: odd_expression
2569
2558
  type:
2570
- _class: Expressir::Model::Types::Boolean
2559
+ _class: Expressir::Model::DataTypes::Boolean
2571
2560
  expression:
2572
- _class: Expressir::Model::Expressions::Call
2573
- ref:
2574
- _class: Expressir::Model::Expressions::SimpleReference
2561
+ _class: Expressir::Model::Expressions::FunctionCall
2562
+ function:
2563
+ _class: Expressir::Model::References::SimpleReference
2575
2564
  id: ODD
2576
2565
  parameters:
2577
2566
  - _class: Expressir::Model::Literals::Logical
2578
2567
  value: :TRUE
2579
- - _class: Expressir::Model::Variable
2568
+ - _class: Expressir::Model::Declarations::Variable
2580
2569
  id: rolesof_expression
2581
2570
  type:
2582
- _class: Expressir::Model::Types::Boolean
2571
+ _class: Expressir::Model::DataTypes::Boolean
2583
2572
  expression:
2584
- _class: Expressir::Model::Expressions::Call
2585
- ref:
2586
- _class: Expressir::Model::Expressions::SimpleReference
2573
+ _class: Expressir::Model::Expressions::FunctionCall
2574
+ function:
2575
+ _class: Expressir::Model::References::SimpleReference
2587
2576
  id: ROLESOF
2588
2577
  parameters:
2589
2578
  - _class: Expressir::Model::Literals::Logical
2590
2579
  value: :TRUE
2591
- - _class: Expressir::Model::Variable
2580
+ - _class: Expressir::Model::Declarations::Variable
2592
2581
  id: sin_expression
2593
2582
  type:
2594
- _class: Expressir::Model::Types::Boolean
2583
+ _class: Expressir::Model::DataTypes::Boolean
2595
2584
  expression:
2596
- _class: Expressir::Model::Expressions::Call
2597
- ref:
2598
- _class: Expressir::Model::Expressions::SimpleReference
2585
+ _class: Expressir::Model::Expressions::FunctionCall
2586
+ function:
2587
+ _class: Expressir::Model::References::SimpleReference
2599
2588
  id: SIN
2600
2589
  parameters:
2601
2590
  - _class: Expressir::Model::Literals::Logical
2602
2591
  value: :TRUE
2603
- - _class: Expressir::Model::Variable
2592
+ - _class: Expressir::Model::Declarations::Variable
2604
2593
  id: sizeof_expression
2605
2594
  type:
2606
- _class: Expressir::Model::Types::Boolean
2595
+ _class: Expressir::Model::DataTypes::Boolean
2607
2596
  expression:
2608
- _class: Expressir::Model::Expressions::Call
2609
- ref:
2610
- _class: Expressir::Model::Expressions::SimpleReference
2597
+ _class: Expressir::Model::Expressions::FunctionCall
2598
+ function:
2599
+ _class: Expressir::Model::References::SimpleReference
2611
2600
  id: SIZEOF
2612
2601
  parameters:
2613
2602
  - _class: Expressir::Model::Literals::Logical
2614
2603
  value: :TRUE
2615
- - _class: Expressir::Model::Variable
2604
+ - _class: Expressir::Model::Declarations::Variable
2616
2605
  id: sqrt_expression
2617
2606
  type:
2618
- _class: Expressir::Model::Types::Boolean
2607
+ _class: Expressir::Model::DataTypes::Boolean
2619
2608
  expression:
2620
- _class: Expressir::Model::Expressions::Call
2621
- ref:
2622
- _class: Expressir::Model::Expressions::SimpleReference
2609
+ _class: Expressir::Model::Expressions::FunctionCall
2610
+ function:
2611
+ _class: Expressir::Model::References::SimpleReference
2623
2612
  id: SQRT
2624
2613
  parameters:
2625
2614
  - _class: Expressir::Model::Literals::Logical
2626
2615
  value: :TRUE
2627
- - _class: Expressir::Model::Variable
2616
+ - _class: Expressir::Model::Declarations::Variable
2628
2617
  id: tan_expression
2629
2618
  type:
2630
- _class: Expressir::Model::Types::Boolean
2619
+ _class: Expressir::Model::DataTypes::Boolean
2631
2620
  expression:
2632
- _class: Expressir::Model::Expressions::Call
2633
- ref:
2634
- _class: Expressir::Model::Expressions::SimpleReference
2621
+ _class: Expressir::Model::Expressions::FunctionCall
2622
+ function:
2623
+ _class: Expressir::Model::References::SimpleReference
2635
2624
  id: TAN
2636
2625
  parameters:
2637
2626
  - _class: Expressir::Model::Literals::Logical
2638
2627
  value: :TRUE
2639
- - _class: Expressir::Model::Variable
2628
+ - _class: Expressir::Model::Declarations::Variable
2640
2629
  id: typeof_expression
2641
2630
  type:
2642
- _class: Expressir::Model::Types::Boolean
2631
+ _class: Expressir::Model::DataTypes::Boolean
2643
2632
  expression:
2644
- _class: Expressir::Model::Expressions::Call
2645
- ref:
2646
- _class: Expressir::Model::Expressions::SimpleReference
2633
+ _class: Expressir::Model::Expressions::FunctionCall
2634
+ function:
2635
+ _class: Expressir::Model::References::SimpleReference
2647
2636
  id: TYPEOF
2648
2637
  parameters:
2649
2638
  - _class: Expressir::Model::Literals::Logical
2650
2639
  value: :TRUE
2651
- - _class: Expressir::Model::Variable
2640
+ - _class: Expressir::Model::Declarations::Variable
2652
2641
  id: usedin_expression
2653
2642
  type:
2654
- _class: Expressir::Model::Types::Boolean
2643
+ _class: Expressir::Model::DataTypes::Boolean
2655
2644
  expression:
2656
- _class: Expressir::Model::Expressions::Call
2657
- ref:
2658
- _class: Expressir::Model::Expressions::SimpleReference
2645
+ _class: Expressir::Model::Expressions::FunctionCall
2646
+ function:
2647
+ _class: Expressir::Model::References::SimpleReference
2659
2648
  id: USEDIN
2660
2649
  parameters:
2661
2650
  - _class: Expressir::Model::Literals::Logical
2662
2651
  value: :TRUE
2663
- - _class: Expressir::Model::Variable
2652
+ - _class: Expressir::Model::Declarations::Variable
2664
2653
  id: value_expression
2665
2654
  type:
2666
- _class: Expressir::Model::Types::Boolean
2655
+ _class: Expressir::Model::DataTypes::Boolean
2667
2656
  expression:
2668
- _class: Expressir::Model::Expressions::Call
2669
- ref:
2670
- _class: Expressir::Model::Expressions::SimpleReference
2657
+ _class: Expressir::Model::Expressions::FunctionCall
2658
+ function:
2659
+ _class: Expressir::Model::References::SimpleReference
2671
2660
  id: VALUE
2672
2661
  parameters:
2673
2662
  - _class: Expressir::Model::Literals::Logical
2674
2663
  value: :TRUE
2675
- - _class: Expressir::Model::Variable
2664
+ - _class: Expressir::Model::Declarations::Variable
2676
2665
  id: value_in_expression
2677
2666
  type:
2678
- _class: Expressir::Model::Types::Boolean
2667
+ _class: Expressir::Model::DataTypes::Boolean
2679
2668
  expression:
2680
- _class: Expressir::Model::Expressions::Call
2681
- ref:
2682
- _class: Expressir::Model::Expressions::SimpleReference
2669
+ _class: Expressir::Model::Expressions::FunctionCall
2670
+ function:
2671
+ _class: Expressir::Model::References::SimpleReference
2683
2672
  id: VALUE_IN
2684
2673
  parameters:
2685
2674
  - _class: Expressir::Model::Literals::Logical
2686
2675
  value: :TRUE
2687
- - _class: Expressir::Model::Variable
2676
+ - _class: Expressir::Model::Declarations::Variable
2688
2677
  id: value_unique_expression
2689
2678
  type:
2690
- _class: Expressir::Model::Types::Boolean
2679
+ _class: Expressir::Model::DataTypes::Boolean
2691
2680
  expression:
2692
- _class: Expressir::Model::Expressions::Call
2693
- ref:
2694
- _class: Expressir::Model::Expressions::SimpleReference
2681
+ _class: Expressir::Model::Expressions::FunctionCall
2682
+ function:
2683
+ _class: Expressir::Model::References::SimpleReference
2695
2684
  id: VALUE_UNIQUE
2696
2685
  parameters:
2697
2686
  - _class: Expressir::Model::Literals::Logical
2698
2687
  value: :TRUE
2699
- - _class: Expressir::Model::Variable
2688
+ - _class: Expressir::Model::Declarations::Variable
2700
2689
  id: plus_expression
2701
2690
  type:
2702
- _class: Expressir::Model::Types::Boolean
2691
+ _class: Expressir::Model::DataTypes::Boolean
2703
2692
  expression:
2704
2693
  _class: Expressir::Model::Expressions::UnaryExpression
2705
2694
  operator: :PLUS
2706
2695
  operand:
2707
2696
  _class: Expressir::Model::Literals::Integer
2708
2697
  value: '4'
2709
- - _class: Expressir::Model::Variable
2698
+ - _class: Expressir::Model::Declarations::Variable
2710
2699
  id: plus_addition_expression
2711
2700
  type:
2712
- _class: Expressir::Model::Types::Boolean
2701
+ _class: Expressir::Model::DataTypes::Boolean
2713
2702
  expression:
2714
2703
  _class: Expressir::Model::Expressions::UnaryExpression
2715
2704
  operator: :PLUS
@@ -2722,20 +2711,20 @@ schemas:
2722
2711
  operand2:
2723
2712
  _class: Expressir::Model::Literals::Integer
2724
2713
  value: '2'
2725
- - _class: Expressir::Model::Variable
2714
+ - _class: Expressir::Model::Declarations::Variable
2726
2715
  id: minus_expression
2727
2716
  type:
2728
- _class: Expressir::Model::Types::Boolean
2717
+ _class: Expressir::Model::DataTypes::Boolean
2729
2718
  expression:
2730
2719
  _class: Expressir::Model::Expressions::UnaryExpression
2731
2720
  operator: :MINUS
2732
2721
  operand:
2733
2722
  _class: Expressir::Model::Literals::Integer
2734
2723
  value: '4'
2735
- - _class: Expressir::Model::Variable
2724
+ - _class: Expressir::Model::Declarations::Variable
2736
2725
  id: minus_addition_expression
2737
2726
  type:
2738
- _class: Expressir::Model::Types::Boolean
2727
+ _class: Expressir::Model::DataTypes::Boolean
2739
2728
  expression:
2740
2729
  _class: Expressir::Model::Expressions::UnaryExpression
2741
2730
  operator: :MINUS
@@ -2748,10 +2737,10 @@ schemas:
2748
2737
  operand2:
2749
2738
  _class: Expressir::Model::Literals::Integer
2750
2739
  value: '2'
2751
- - _class: Expressir::Model::Variable
2740
+ - _class: Expressir::Model::Declarations::Variable
2752
2741
  id: addition_expression
2753
2742
  type:
2754
- _class: Expressir::Model::Types::Boolean
2743
+ _class: Expressir::Model::DataTypes::Boolean
2755
2744
  expression:
2756
2745
  _class: Expressir::Model::Expressions::BinaryExpression
2757
2746
  operator: :ADDITION
@@ -2761,10 +2750,10 @@ schemas:
2761
2750
  operand2:
2762
2751
  _class: Expressir::Model::Literals::Integer
2763
2752
  value: '2'
2764
- - _class: Expressir::Model::Variable
2753
+ - _class: Expressir::Model::Declarations::Variable
2765
2754
  id: subtraction_expression
2766
2755
  type:
2767
- _class: Expressir::Model::Types::Boolean
2756
+ _class: Expressir::Model::DataTypes::Boolean
2768
2757
  expression:
2769
2758
  _class: Expressir::Model::Expressions::BinaryExpression
2770
2759
  operator: :SUBTRACTION
@@ -2774,10 +2763,10 @@ schemas:
2774
2763
  operand2:
2775
2764
  _class: Expressir::Model::Literals::Integer
2776
2765
  value: '2'
2777
- - _class: Expressir::Model::Variable
2766
+ - _class: Expressir::Model::Declarations::Variable
2778
2767
  id: multiplication_expression
2779
2768
  type:
2780
- _class: Expressir::Model::Types::Boolean
2769
+ _class: Expressir::Model::DataTypes::Boolean
2781
2770
  expression:
2782
2771
  _class: Expressir::Model::Expressions::BinaryExpression
2783
2772
  operator: :MULTIPLICATION
@@ -2787,10 +2776,10 @@ schemas:
2787
2776
  operand2:
2788
2777
  _class: Expressir::Model::Literals::Integer
2789
2778
  value: '2'
2790
- - _class: Expressir::Model::Variable
2779
+ - _class: Expressir::Model::Declarations::Variable
2791
2780
  id: real_division_expression
2792
2781
  type:
2793
- _class: Expressir::Model::Types::Boolean
2782
+ _class: Expressir::Model::DataTypes::Boolean
2794
2783
  expression:
2795
2784
  _class: Expressir::Model::Expressions::BinaryExpression
2796
2785
  operator: :REAL_DIVISION
@@ -2800,10 +2789,10 @@ schemas:
2800
2789
  operand2:
2801
2790
  _class: Expressir::Model::Literals::Integer
2802
2791
  value: '2'
2803
- - _class: Expressir::Model::Variable
2792
+ - _class: Expressir::Model::Declarations::Variable
2804
2793
  id: integer_division_expression
2805
2794
  type:
2806
- _class: Expressir::Model::Types::Boolean
2795
+ _class: Expressir::Model::DataTypes::Boolean
2807
2796
  expression:
2808
2797
  _class: Expressir::Model::Expressions::BinaryExpression
2809
2798
  operator: :INTEGER_DIVISION
@@ -2813,10 +2802,10 @@ schemas:
2813
2802
  operand2:
2814
2803
  _class: Expressir::Model::Literals::Integer
2815
2804
  value: '2'
2816
- - _class: Expressir::Model::Variable
2805
+ - _class: Expressir::Model::Declarations::Variable
2817
2806
  id: modulo_expression
2818
2807
  type:
2819
- _class: Expressir::Model::Types::Boolean
2808
+ _class: Expressir::Model::DataTypes::Boolean
2820
2809
  expression:
2821
2810
  _class: Expressir::Model::Expressions::BinaryExpression
2822
2811
  operator: :MODULO
@@ -2826,10 +2815,10 @@ schemas:
2826
2815
  operand2:
2827
2816
  _class: Expressir::Model::Literals::Integer
2828
2817
  value: '2'
2829
- - _class: Expressir::Model::Variable
2818
+ - _class: Expressir::Model::Declarations::Variable
2830
2819
  id: exponentiation_expression
2831
2820
  type:
2832
- _class: Expressir::Model::Types::Boolean
2821
+ _class: Expressir::Model::DataTypes::Boolean
2833
2822
  expression:
2834
2823
  _class: Expressir::Model::Expressions::BinaryExpression
2835
2824
  operator: :EXPONENTIATION
@@ -2839,10 +2828,10 @@ schemas:
2839
2828
  operand2:
2840
2829
  _class: Expressir::Model::Literals::Integer
2841
2830
  value: '2'
2842
- - _class: Expressir::Model::Variable
2831
+ - _class: Expressir::Model::Declarations::Variable
2843
2832
  id: addition_addition_expression
2844
2833
  type:
2845
- _class: Expressir::Model::Types::Boolean
2834
+ _class: Expressir::Model::DataTypes::Boolean
2846
2835
  expression:
2847
2836
  _class: Expressir::Model::Expressions::BinaryExpression
2848
2837
  operator: :ADDITION
@@ -2858,10 +2847,10 @@ schemas:
2858
2847
  operand2:
2859
2848
  _class: Expressir::Model::Literals::Integer
2860
2849
  value: '1'
2861
- - _class: Expressir::Model::Variable
2850
+ - _class: Expressir::Model::Declarations::Variable
2862
2851
  id: subtraction_subtraction_expression
2863
2852
  type:
2864
- _class: Expressir::Model::Types::Boolean
2853
+ _class: Expressir::Model::DataTypes::Boolean
2865
2854
  expression:
2866
2855
  _class: Expressir::Model::Expressions::BinaryExpression
2867
2856
  operator: :SUBTRACTION
@@ -2877,10 +2866,10 @@ schemas:
2877
2866
  operand2:
2878
2867
  _class: Expressir::Model::Literals::Integer
2879
2868
  value: '1'
2880
- - _class: Expressir::Model::Variable
2869
+ - _class: Expressir::Model::Declarations::Variable
2881
2870
  id: addition_subtraction_expression
2882
2871
  type:
2883
- _class: Expressir::Model::Types::Boolean
2872
+ _class: Expressir::Model::DataTypes::Boolean
2884
2873
  expression:
2885
2874
  _class: Expressir::Model::Expressions::BinaryExpression
2886
2875
  operator: :SUBTRACTION
@@ -2896,10 +2885,10 @@ schemas:
2896
2885
  operand2:
2897
2886
  _class: Expressir::Model::Literals::Integer
2898
2887
  value: '1'
2899
- - _class: Expressir::Model::Variable
2888
+ - _class: Expressir::Model::Declarations::Variable
2900
2889
  id: subtraction_addition_expression
2901
2890
  type:
2902
- _class: Expressir::Model::Types::Boolean
2891
+ _class: Expressir::Model::DataTypes::Boolean
2903
2892
  expression:
2904
2893
  _class: Expressir::Model::Expressions::BinaryExpression
2905
2894
  operator: :ADDITION
@@ -2915,10 +2904,10 @@ schemas:
2915
2904
  operand2:
2916
2905
  _class: Expressir::Model::Literals::Integer
2917
2906
  value: '1'
2918
- - _class: Expressir::Model::Variable
2907
+ - _class: Expressir::Model::Declarations::Variable
2919
2908
  id: addition_multiplication_expression
2920
2909
  type:
2921
- _class: Expressir::Model::Types::Boolean
2910
+ _class: Expressir::Model::DataTypes::Boolean
2922
2911
  expression:
2923
2912
  _class: Expressir::Model::Expressions::BinaryExpression
2924
2913
  operator: :ADDITION
@@ -2934,10 +2923,10 @@ schemas:
2934
2923
  operand2:
2935
2924
  _class: Expressir::Model::Literals::Integer
2936
2925
  value: '2'
2937
- - _class: Expressir::Model::Variable
2926
+ - _class: Expressir::Model::Declarations::Variable
2938
2927
  id: multiplication_addition_expression
2939
2928
  type:
2940
- _class: Expressir::Model::Types::Boolean
2929
+ _class: Expressir::Model::DataTypes::Boolean
2941
2930
  expression:
2942
2931
  _class: Expressir::Model::Expressions::BinaryExpression
2943
2932
  operator: :ADDITION
@@ -2953,10 +2942,10 @@ schemas:
2953
2942
  operand2:
2954
2943
  _class: Expressir::Model::Literals::Integer
2955
2944
  value: '2'
2956
- - _class: Expressir::Model::Variable
2945
+ - _class: Expressir::Model::Declarations::Variable
2957
2946
  id: parenthesis_addition_multiplication_expression
2958
2947
  type:
2959
- _class: Expressir::Model::Types::Boolean
2948
+ _class: Expressir::Model::DataTypes::Boolean
2960
2949
  expression:
2961
2950
  _class: Expressir::Model::Expressions::BinaryExpression
2962
2951
  operator: :MULTIPLICATION
@@ -2972,10 +2961,10 @@ schemas:
2972
2961
  operand2:
2973
2962
  _class: Expressir::Model::Literals::Integer
2974
2963
  value: '2'
2975
- - _class: Expressir::Model::Variable
2964
+ - _class: Expressir::Model::Declarations::Variable
2976
2965
  id: multiplication_parenthesis_addition_expression
2977
2966
  type:
2978
- _class: Expressir::Model::Types::Boolean
2967
+ _class: Expressir::Model::DataTypes::Boolean
2979
2968
  expression:
2980
2969
  _class: Expressir::Model::Expressions::BinaryExpression
2981
2970
  operator: :MULTIPLICATION
@@ -2991,10 +2980,10 @@ schemas:
2991
2980
  operand2:
2992
2981
  _class: Expressir::Model::Literals::Integer
2993
2982
  value: '2'
2994
- - _class: Expressir::Model::Variable
2983
+ - _class: Expressir::Model::Declarations::Variable
2995
2984
  id: equal_expression
2996
2985
  type:
2997
- _class: Expressir::Model::Types::Boolean
2986
+ _class: Expressir::Model::DataTypes::Boolean
2998
2987
  expression:
2999
2988
  _class: Expressir::Model::Expressions::BinaryExpression
3000
2989
  operator: :EQUAL
@@ -3004,10 +2993,10 @@ schemas:
3004
2993
  operand2:
3005
2994
  _class: Expressir::Model::Literals::Integer
3006
2995
  value: '2'
3007
- - _class: Expressir::Model::Variable
2996
+ - _class: Expressir::Model::Declarations::Variable
3008
2997
  id: not_equal_expression
3009
2998
  type:
3010
- _class: Expressir::Model::Types::Boolean
2999
+ _class: Expressir::Model::DataTypes::Boolean
3011
3000
  expression:
3012
3001
  _class: Expressir::Model::Expressions::BinaryExpression
3013
3002
  operator: :NOT_EQUAL
@@ -3017,10 +3006,10 @@ schemas:
3017
3006
  operand2:
3018
3007
  _class: Expressir::Model::Literals::Integer
3019
3008
  value: '2'
3020
- - _class: Expressir::Model::Variable
3009
+ - _class: Expressir::Model::Declarations::Variable
3021
3010
  id: instance_equal_expression
3022
3011
  type:
3023
- _class: Expressir::Model::Types::Boolean
3012
+ _class: Expressir::Model::DataTypes::Boolean
3024
3013
  expression:
3025
3014
  _class: Expressir::Model::Expressions::BinaryExpression
3026
3015
  operator: :INSTANCE_EQUAL
@@ -3030,10 +3019,10 @@ schemas:
3030
3019
  operand2:
3031
3020
  _class: Expressir::Model::Literals::Integer
3032
3021
  value: '2'
3033
- - _class: Expressir::Model::Variable
3022
+ - _class: Expressir::Model::Declarations::Variable
3034
3023
  id: instance_not_equal_expression
3035
3024
  type:
3036
- _class: Expressir::Model::Types::Boolean
3025
+ _class: Expressir::Model::DataTypes::Boolean
3037
3026
  expression:
3038
3027
  _class: Expressir::Model::Expressions::BinaryExpression
3039
3028
  operator: :INSTANCE_NOT_EQUAL
@@ -3043,10 +3032,10 @@ schemas:
3043
3032
  operand2:
3044
3033
  _class: Expressir::Model::Literals::Integer
3045
3034
  value: '2'
3046
- - _class: Expressir::Model::Variable
3035
+ - _class: Expressir::Model::Declarations::Variable
3047
3036
  id: lt_expression
3048
3037
  type:
3049
- _class: Expressir::Model::Types::Boolean
3038
+ _class: Expressir::Model::DataTypes::Boolean
3050
3039
  expression:
3051
3040
  _class: Expressir::Model::Expressions::BinaryExpression
3052
3041
  operator: :LESS_THAN
@@ -3056,10 +3045,10 @@ schemas:
3056
3045
  operand2:
3057
3046
  _class: Expressir::Model::Literals::Integer
3058
3047
  value: '2'
3059
- - _class: Expressir::Model::Variable
3048
+ - _class: Expressir::Model::Declarations::Variable
3060
3049
  id: gt_expression
3061
3050
  type:
3062
- _class: Expressir::Model::Types::Boolean
3051
+ _class: Expressir::Model::DataTypes::Boolean
3063
3052
  expression:
3064
3053
  _class: Expressir::Model::Expressions::BinaryExpression
3065
3054
  operator: :GREATER_THAN
@@ -3069,10 +3058,10 @@ schemas:
3069
3058
  operand2:
3070
3059
  _class: Expressir::Model::Literals::Integer
3071
3060
  value: '2'
3072
- - _class: Expressir::Model::Variable
3061
+ - _class: Expressir::Model::Declarations::Variable
3073
3062
  id: lte_expression
3074
3063
  type:
3075
- _class: Expressir::Model::Types::Boolean
3064
+ _class: Expressir::Model::DataTypes::Boolean
3076
3065
  expression:
3077
3066
  _class: Expressir::Model::Expressions::BinaryExpression
3078
3067
  operator: :LESS_THAN_OR_EQUAL
@@ -3082,10 +3071,10 @@ schemas:
3082
3071
  operand2:
3083
3072
  _class: Expressir::Model::Literals::Integer
3084
3073
  value: '2'
3085
- - _class: Expressir::Model::Variable
3074
+ - _class: Expressir::Model::Declarations::Variable
3086
3075
  id: gte_expression
3087
3076
  type:
3088
- _class: Expressir::Model::Types::Boolean
3077
+ _class: Expressir::Model::DataTypes::Boolean
3089
3078
  expression:
3090
3079
  _class: Expressir::Model::Expressions::BinaryExpression
3091
3080
  operator: :GREATER_THAN_OR_EQUAL
@@ -3095,20 +3084,20 @@ schemas:
3095
3084
  operand2:
3096
3085
  _class: Expressir::Model::Literals::Integer
3097
3086
  value: '2'
3098
- - _class: Expressir::Model::Variable
3087
+ - _class: Expressir::Model::Declarations::Variable
3099
3088
  id: not_expression
3100
3089
  type:
3101
- _class: Expressir::Model::Types::Boolean
3090
+ _class: Expressir::Model::DataTypes::Boolean
3102
3091
  expression:
3103
3092
  _class: Expressir::Model::Expressions::UnaryExpression
3104
3093
  operator: :NOT
3105
3094
  operand:
3106
3095
  _class: Expressir::Model::Literals::Logical
3107
3096
  value: :TRUE
3108
- - _class: Expressir::Model::Variable
3097
+ - _class: Expressir::Model::Declarations::Variable
3109
3098
  id: not_or_expression
3110
3099
  type:
3111
- _class: Expressir::Model::Types::Boolean
3100
+ _class: Expressir::Model::DataTypes::Boolean
3112
3101
  expression:
3113
3102
  _class: Expressir::Model::Expressions::UnaryExpression
3114
3103
  operator: :NOT
@@ -3121,10 +3110,10 @@ schemas:
3121
3110
  operand2:
3122
3111
  _class: Expressir::Model::Literals::Logical
3123
3112
  value: :FALSE
3124
- - _class: Expressir::Model::Variable
3113
+ - _class: Expressir::Model::Declarations::Variable
3125
3114
  id: or_expression
3126
3115
  type:
3127
- _class: Expressir::Model::Types::Boolean
3116
+ _class: Expressir::Model::DataTypes::Boolean
3128
3117
  expression:
3129
3118
  _class: Expressir::Model::Expressions::BinaryExpression
3130
3119
  operator: :OR
@@ -3134,10 +3123,10 @@ schemas:
3134
3123
  operand2:
3135
3124
  _class: Expressir::Model::Literals::Logical
3136
3125
  value: :FALSE
3137
- - _class: Expressir::Model::Variable
3126
+ - _class: Expressir::Model::Declarations::Variable
3138
3127
  id: and_expression
3139
3128
  type:
3140
- _class: Expressir::Model::Types::Boolean
3129
+ _class: Expressir::Model::DataTypes::Boolean
3141
3130
  expression:
3142
3131
  _class: Expressir::Model::Expressions::BinaryExpression
3143
3132
  operator: :AND
@@ -3147,10 +3136,10 @@ schemas:
3147
3136
  operand2:
3148
3137
  _class: Expressir::Model::Literals::Logical
3149
3138
  value: :FALSE
3150
- - _class: Expressir::Model::Variable
3139
+ - _class: Expressir::Model::Declarations::Variable
3151
3140
  id: or_or_expression
3152
3141
  type:
3153
- _class: Expressir::Model::Types::Boolean
3142
+ _class: Expressir::Model::DataTypes::Boolean
3154
3143
  expression:
3155
3144
  _class: Expressir::Model::Expressions::BinaryExpression
3156
3145
  operator: :OR
@@ -3166,10 +3155,10 @@ schemas:
3166
3155
  operand2:
3167
3156
  _class: Expressir::Model::Literals::Logical
3168
3157
  value: :TRUE
3169
- - _class: Expressir::Model::Variable
3158
+ - _class: Expressir::Model::Declarations::Variable
3170
3159
  id: and_and_expression
3171
3160
  type:
3172
- _class: Expressir::Model::Types::Boolean
3161
+ _class: Expressir::Model::DataTypes::Boolean
3173
3162
  expression:
3174
3163
  _class: Expressir::Model::Expressions::BinaryExpression
3175
3164
  operator: :AND
@@ -3185,10 +3174,10 @@ schemas:
3185
3174
  operand2:
3186
3175
  _class: Expressir::Model::Literals::Logical
3187
3176
  value: :TRUE
3188
- - _class: Expressir::Model::Variable
3177
+ - _class: Expressir::Model::Declarations::Variable
3189
3178
  id: or_and_expression
3190
3179
  type:
3191
- _class: Expressir::Model::Types::Boolean
3180
+ _class: Expressir::Model::DataTypes::Boolean
3192
3181
  expression:
3193
3182
  _class: Expressir::Model::Expressions::BinaryExpression
3194
3183
  operator: :OR
@@ -3204,10 +3193,10 @@ schemas:
3204
3193
  operand2:
3205
3194
  _class: Expressir::Model::Literals::Logical
3206
3195
  value: :TRUE
3207
- - _class: Expressir::Model::Variable
3196
+ - _class: Expressir::Model::Declarations::Variable
3208
3197
  id: and_or_expression
3209
3198
  type:
3210
- _class: Expressir::Model::Types::Boolean
3199
+ _class: Expressir::Model::DataTypes::Boolean
3211
3200
  expression:
3212
3201
  _class: Expressir::Model::Expressions::BinaryExpression
3213
3202
  operator: :OR
@@ -3223,10 +3212,10 @@ schemas:
3223
3212
  operand2:
3224
3213
  _class: Expressir::Model::Literals::Logical
3225
3214
  value: :TRUE
3226
- - _class: Expressir::Model::Variable
3215
+ - _class: Expressir::Model::Declarations::Variable
3227
3216
  id: parenthesis_or_and_expression
3228
3217
  type:
3229
- _class: Expressir::Model::Types::Boolean
3218
+ _class: Expressir::Model::DataTypes::Boolean
3230
3219
  expression:
3231
3220
  _class: Expressir::Model::Expressions::BinaryExpression
3232
3221
  operator: :AND
@@ -3242,10 +3231,10 @@ schemas:
3242
3231
  operand2:
3243
3232
  _class: Expressir::Model::Literals::Logical
3244
3233
  value: :TRUE
3245
- - _class: Expressir::Model::Variable
3234
+ - _class: Expressir::Model::Declarations::Variable
3246
3235
  id: and_parenthesis_or_expression
3247
3236
  type:
3248
- _class: Expressir::Model::Types::Boolean
3237
+ _class: Expressir::Model::DataTypes::Boolean
3249
3238
  expression:
3250
3239
  _class: Expressir::Model::Expressions::BinaryExpression
3251
3240
  operator: :AND
@@ -3261,23 +3250,23 @@ schemas:
3261
3250
  operand2:
3262
3251
  _class: Expressir::Model::Literals::Logical
3263
3252
  value: :TRUE
3264
- - _class: Expressir::Model::Variable
3253
+ - _class: Expressir::Model::Declarations::Variable
3265
3254
  id: combine_expression
3266
3255
  type:
3267
- _class: Expressir::Model::Types::Boolean
3256
+ _class: Expressir::Model::DataTypes::Boolean
3268
3257
  expression:
3269
3258
  _class: Expressir::Model::Expressions::BinaryExpression
3270
3259
  operator: :COMBINE
3271
3260
  operand1:
3272
- _class: Expressir::Model::Expressions::SimpleReference
3261
+ _class: Expressir::Model::References::SimpleReference
3273
3262
  id: test
3274
3263
  operand2:
3275
- _class: Expressir::Model::Expressions::SimpleReference
3264
+ _class: Expressir::Model::References::SimpleReference
3276
3265
  id: test2
3277
- - _class: Expressir::Model::Variable
3266
+ - _class: Expressir::Model::Declarations::Variable
3278
3267
  id: in_expression
3279
3268
  type:
3280
- _class: Expressir::Model::Types::Boolean
3269
+ _class: Expressir::Model::DataTypes::Boolean
3281
3270
  expression:
3282
3271
  _class: Expressir::Model::Expressions::BinaryExpression
3283
3272
  operator: :IN
@@ -3289,10 +3278,10 @@ schemas:
3289
3278
  items:
3290
3279
  - _class: Expressir::Model::Literals::Logical
3291
3280
  value: :TRUE
3292
- - _class: Expressir::Model::Variable
3281
+ - _class: Expressir::Model::Declarations::Variable
3293
3282
  id: like_expression
3294
3283
  type:
3295
- _class: Expressir::Model::Types::Boolean
3284
+ _class: Expressir::Model::DataTypes::Boolean
3296
3285
  expression:
3297
3286
  _class: Expressir::Model::Expressions::BinaryExpression
3298
3287
  operator: :LIKE
@@ -3302,33 +3291,33 @@ schemas:
3302
3291
  operand2:
3303
3292
  _class: Expressir::Model::Literals::String
3304
3293
  value: xxx
3305
- - _class: Expressir::Model::Variable
3294
+ - _class: Expressir::Model::Declarations::Variable
3306
3295
  id: aggregate_initializer_expression
3307
3296
  type:
3308
- _class: Expressir::Model::Types::Boolean
3297
+ _class: Expressir::Model::DataTypes::Boolean
3309
3298
  expression:
3310
3299
  _class: Expressir::Model::Expressions::AggregateInitializer
3311
3300
  items:
3312
3301
  - _class: Expressir::Model::Literals::Integer
3313
3302
  value: '4'
3314
- - _class: Expressir::Model::Variable
3303
+ - _class: Expressir::Model::Declarations::Variable
3315
3304
  id: repeated_aggregate_initializer_expression
3316
3305
  type:
3317
- _class: Expressir::Model::Types::Boolean
3306
+ _class: Expressir::Model::DataTypes::Boolean
3318
3307
  expression:
3319
3308
  _class: Expressir::Model::Expressions::AggregateInitializer
3320
3309
  items:
3321
- - _class: Expressir::Model::Expressions::AggregateItem
3310
+ - _class: Expressir::Model::Expressions::AggregateInitializerItem
3322
3311
  expression:
3323
3312
  _class: Expressir::Model::Literals::Integer
3324
3313
  value: '4'
3325
3314
  repetition:
3326
3315
  _class: Expressir::Model::Literals::Integer
3327
3316
  value: '2'
3328
- - _class: Expressir::Model::Variable
3317
+ - _class: Expressir::Model::Declarations::Variable
3329
3318
  id: complex_aggregate_initializer_expression
3330
3319
  type:
3331
- _class: Expressir::Model::Types::Boolean
3320
+ _class: Expressir::Model::DataTypes::Boolean
3332
3321
  expression:
3333
3322
  _class: Expressir::Model::Expressions::AggregateInitializer
3334
3323
  items:
@@ -3340,14 +3329,14 @@ schemas:
3340
3329
  operand2:
3341
3330
  _class: Expressir::Model::Literals::Integer
3342
3331
  value: '2'
3343
- - _class: Expressir::Model::Variable
3332
+ - _class: Expressir::Model::Declarations::Variable
3344
3333
  id: complex_repeated_aggregate_initializer_expression
3345
3334
  type:
3346
- _class: Expressir::Model::Types::Boolean
3335
+ _class: Expressir::Model::DataTypes::Boolean
3347
3336
  expression:
3348
3337
  _class: Expressir::Model::Expressions::AggregateInitializer
3349
3338
  items:
3350
- - _class: Expressir::Model::Expressions::AggregateItem
3339
+ - _class: Expressir::Model::Expressions::AggregateInitializerItem
3351
3340
  expression:
3352
3341
  _class: Expressir::Model::Expressions::BinaryExpression
3353
3342
  operator: :ADDITION
@@ -3366,58 +3355,58 @@ schemas:
3366
3355
  operand2:
3367
3356
  _class: Expressir::Model::Literals::Integer
3368
3357
  value: '2'
3369
- - _class: Expressir::Model::Variable
3358
+ - _class: Expressir::Model::Declarations::Variable
3370
3359
  id: call_expression
3371
3360
  type:
3372
- _class: Expressir::Model::Types::Boolean
3361
+ _class: Expressir::Model::DataTypes::Boolean
3373
3362
  expression:
3374
- _class: Expressir::Model::Expressions::Call
3375
- ref:
3376
- _class: Expressir::Model::Expressions::SimpleReference
3363
+ _class: Expressir::Model::Expressions::FunctionCall
3364
+ function:
3365
+ _class: Expressir::Model::References::SimpleReference
3377
3366
  id: parameter_function
3378
3367
  base_path: syntax_schema.parameter_function
3379
3368
  parameters:
3380
3369
  - _class: Expressir::Model::Literals::Logical
3381
3370
  value: :TRUE
3382
- - _class: Expressir::Model::Variable
3371
+ - _class: Expressir::Model::Declarations::Variable
3383
3372
  id: simple_reference_expression
3384
3373
  type:
3385
- _class: Expressir::Model::Types::Boolean
3374
+ _class: Expressir::Model::DataTypes::Boolean
3386
3375
  expression:
3387
- _class: Expressir::Model::Expressions::SimpleReference
3376
+ _class: Expressir::Model::References::SimpleReference
3388
3377
  id: test
3389
- - _class: Expressir::Model::Variable
3378
+ - _class: Expressir::Model::Declarations::Variable
3390
3379
  id: group_reference_expression
3391
3380
  type:
3392
- _class: Expressir::Model::Types::Boolean
3381
+ _class: Expressir::Model::DataTypes::Boolean
3393
3382
  expression:
3394
- _class: Expressir::Model::Expressions::GroupReference
3383
+ _class: Expressir::Model::References::GroupReference
3395
3384
  ref:
3396
- _class: Expressir::Model::Expressions::SimpleReference
3385
+ _class: Expressir::Model::References::SimpleReference
3397
3386
  id: test
3398
3387
  entity:
3399
- _class: Expressir::Model::Expressions::SimpleReference
3388
+ _class: Expressir::Model::References::SimpleReference
3400
3389
  id: test2
3401
- - _class: Expressir::Model::Variable
3390
+ - _class: Expressir::Model::Declarations::Variable
3402
3391
  id: index_reference_expression
3403
3392
  type:
3404
- _class: Expressir::Model::Types::Boolean
3393
+ _class: Expressir::Model::DataTypes::Boolean
3405
3394
  expression:
3406
- _class: Expressir::Model::Expressions::IndexReference
3395
+ _class: Expressir::Model::References::IndexReference
3407
3396
  ref:
3408
- _class: Expressir::Model::Expressions::SimpleReference
3397
+ _class: Expressir::Model::References::SimpleReference
3409
3398
  id: test
3410
3399
  index1:
3411
3400
  _class: Expressir::Model::Literals::Integer
3412
3401
  value: '1'
3413
- - _class: Expressir::Model::Variable
3402
+ - _class: Expressir::Model::Declarations::Variable
3414
3403
  id: index2_reference_expression
3415
3404
  type:
3416
- _class: Expressir::Model::Types::Boolean
3405
+ _class: Expressir::Model::DataTypes::Boolean
3417
3406
  expression:
3418
- _class: Expressir::Model::Expressions::IndexReference
3407
+ _class: Expressir::Model::References::IndexReference
3419
3408
  ref:
3420
- _class: Expressir::Model::Expressions::SimpleReference
3409
+ _class: Expressir::Model::References::SimpleReference
3421
3410
  id: test
3422
3411
  index1:
3423
3412
  _class: Expressir::Model::Literals::Integer
@@ -3425,22 +3414,22 @@ schemas:
3425
3414
  index2:
3426
3415
  _class: Expressir::Model::Literals::Integer
3427
3416
  value: '9'
3428
- - _class: Expressir::Model::Variable
3417
+ - _class: Expressir::Model::Declarations::Variable
3429
3418
  id: attribute_reference_expression
3430
3419
  type:
3431
- _class: Expressir::Model::Types::Boolean
3420
+ _class: Expressir::Model::DataTypes::Boolean
3432
3421
  expression:
3433
- _class: Expressir::Model::Expressions::AttributeReference
3422
+ _class: Expressir::Model::References::AttributeReference
3434
3423
  ref:
3435
- _class: Expressir::Model::Expressions::SimpleReference
3424
+ _class: Expressir::Model::References::SimpleReference
3436
3425
  id: test
3437
3426
  attribute:
3438
- _class: Expressir::Model::Expressions::SimpleReference
3427
+ _class: Expressir::Model::References::SimpleReference
3439
3428
  id: test2
3440
- - _class: Expressir::Model::Variable
3429
+ - _class: Expressir::Model::Declarations::Variable
3441
3430
  id: lt_lt_interval_expression
3442
3431
  type:
3443
- _class: Expressir::Model::Types::Boolean
3432
+ _class: Expressir::Model::DataTypes::Boolean
3444
3433
  expression:
3445
3434
  _class: Expressir::Model::Expressions::Interval
3446
3435
  low:
@@ -3454,10 +3443,10 @@ schemas:
3454
3443
  high:
3455
3444
  _class: Expressir::Model::Literals::Integer
3456
3445
  value: '9'
3457
- - _class: Expressir::Model::Variable
3446
+ - _class: Expressir::Model::Declarations::Variable
3458
3447
  id: lte_lt_interval_expression
3459
3448
  type:
3460
- _class: Expressir::Model::Types::Boolean
3449
+ _class: Expressir::Model::DataTypes::Boolean
3461
3450
  expression:
3462
3451
  _class: Expressir::Model::Expressions::Interval
3463
3452
  low:
@@ -3471,10 +3460,10 @@ schemas:
3471
3460
  high:
3472
3461
  _class: Expressir::Model::Literals::Integer
3473
3462
  value: '9'
3474
- - _class: Expressir::Model::Variable
3463
+ - _class: Expressir::Model::Declarations::Variable
3475
3464
  id: lt_lte_interval_expression
3476
3465
  type:
3477
- _class: Expressir::Model::Types::Boolean
3466
+ _class: Expressir::Model::DataTypes::Boolean
3478
3467
  expression:
3479
3468
  _class: Expressir::Model::Expressions::Interval
3480
3469
  low:
@@ -3488,10 +3477,10 @@ schemas:
3488
3477
  high:
3489
3478
  _class: Expressir::Model::Literals::Integer
3490
3479
  value: '9'
3491
- - _class: Expressir::Model::Variable
3480
+ - _class: Expressir::Model::Declarations::Variable
3492
3481
  id: lte_lte_interval_expression
3493
3482
  type:
3494
- _class: Expressir::Model::Types::Boolean
3483
+ _class: Expressir::Model::DataTypes::Boolean
3495
3484
  expression:
3496
3485
  _class: Expressir::Model::Expressions::Interval
3497
3486
  low:
@@ -3505,15 +3494,15 @@ schemas:
3505
3494
  high:
3506
3495
  _class: Expressir::Model::Literals::Integer
3507
3496
  value: '9'
3508
- - _class: Expressir::Model::Variable
3497
+ - _class: Expressir::Model::Declarations::Variable
3509
3498
  id: query_expression
3510
3499
  type:
3511
- _class: Expressir::Model::Types::Boolean
3500
+ _class: Expressir::Model::DataTypes::Boolean
3512
3501
  expression:
3513
3502
  _class: Expressir::Model::Expressions::QueryExpression
3514
3503
  id: test
3515
3504
  aggregate_source:
3516
- _class: Expressir::Model::Expressions::SimpleReference
3505
+ _class: Expressir::Model::References::SimpleReference
3517
3506
  id: test2
3518
3507
  expression:
3519
3508
  _class: Expressir::Model::Literals::Logical