expressir 0.2.10-arm64-darwin → 0.2.15-arm64-darwin

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. checksums.yaml +4 -4
  2. data/exe/format +27 -0
  3. data/expressir.gemspec +1 -0
  4. data/lib/expressir/express_exp/2.4/express_parser.bundle +0 -0
  5. data/lib/expressir/express_exp/2.5/express_parser.bundle +0 -0
  6. data/lib/expressir/express_exp/2.6/express_parser.bundle +0 -0
  7. data/lib/expressir/express_exp/2.7/express_parser.bundle +0 -0
  8. data/lib/expressir/express_exp/3.0/express_parser.bundle +0 -0
  9. data/lib/expressir/express_exp/formatter.rb +90 -100
  10. data/lib/expressir/express_exp/hyperlink_formatter.rb +29 -0
  11. data/lib/expressir/express_exp/parser.rb +7 -1
  12. data/lib/expressir/express_exp/schema_head_formatter.rb +14 -0
  13. data/lib/expressir/express_exp/visitor.rb +68 -80
  14. data/lib/expressir/model.rb +2 -2
  15. data/lib/expressir/model/attribute.rb +2 -0
  16. data/lib/expressir/model/constant.rb +2 -0
  17. data/lib/expressir/model/entity.rb +3 -2
  18. data/lib/expressir/model/enumeration_item.rb +2 -0
  19. data/lib/expressir/model/expressions/aggregate_initializer.rb +2 -0
  20. data/lib/expressir/model/expressions/aggregate_item.rb +2 -0
  21. data/lib/expressir/model/expressions/attribute_reference.rb +2 -0
  22. data/lib/expressir/model/expressions/binary_expression.rb +2 -0
  23. data/lib/expressir/model/expressions/call.rb +2 -0
  24. data/lib/expressir/model/expressions/entity_constructor.rb +2 -0
  25. data/lib/expressir/model/expressions/group_reference.rb +2 -0
  26. data/lib/expressir/model/expressions/index_reference.rb +2 -0
  27. data/lib/expressir/model/expressions/interval.rb +2 -0
  28. data/lib/expressir/model/expressions/query_expression.rb +2 -1
  29. data/lib/expressir/model/expressions/simple_reference.rb +2 -0
  30. data/lib/expressir/model/expressions/unary_expression.rb +2 -0
  31. data/lib/expressir/model/function.rb +3 -8
  32. data/lib/expressir/model/identifier.rb +0 -1
  33. data/lib/expressir/model/informal_proposition.rb +2 -0
  34. data/lib/expressir/model/interface.rb +2 -0
  35. data/lib/expressir/model/{renamed_ref.rb → interface_item.rb} +4 -2
  36. data/lib/expressir/model/interfaced_item.rb +23 -0
  37. data/lib/expressir/model/literals/binary.rb +2 -0
  38. data/lib/expressir/model/literals/integer.rb +2 -0
  39. data/lib/expressir/model/literals/logical.rb +2 -0
  40. data/lib/expressir/model/literals/real.rb +2 -0
  41. data/lib/expressir/model/literals/string.rb +2 -0
  42. data/lib/expressir/model/model_element.rb +85 -12
  43. data/lib/expressir/model/parameter.rb +2 -0
  44. data/lib/expressir/model/procedure.rb +3 -8
  45. data/lib/expressir/model/repository.rb +2 -2
  46. data/lib/expressir/model/rule.rb +4 -9
  47. data/lib/expressir/model/schema.rb +45 -9
  48. data/lib/expressir/model/statements/alias.rb +2 -1
  49. data/lib/expressir/model/statements/assignment.rb +2 -0
  50. data/lib/expressir/model/statements/call.rb +2 -0
  51. data/lib/expressir/model/statements/case.rb +2 -0
  52. data/lib/expressir/model/statements/case_action.rb +2 -0
  53. data/lib/expressir/model/statements/compound.rb +2 -0
  54. data/lib/expressir/model/statements/if.rb +2 -0
  55. data/lib/expressir/model/statements/repeat.rb +2 -1
  56. data/lib/expressir/model/statements/return.rb +2 -0
  57. data/lib/expressir/model/subtype_constraint.rb +2 -1
  58. data/lib/expressir/model/type.rb +3 -6
  59. data/lib/expressir/model/types/aggregate.rb +2 -0
  60. data/lib/expressir/model/types/array.rb +2 -0
  61. data/lib/expressir/model/types/bag.rb +2 -0
  62. data/lib/expressir/model/types/binary.rb +2 -0
  63. data/lib/expressir/model/types/enumeration.rb +2 -0
  64. data/lib/expressir/model/types/generic.rb +2 -0
  65. data/lib/expressir/model/types/generic_entity.rb +2 -0
  66. data/lib/expressir/model/types/list.rb +2 -0
  67. data/lib/expressir/model/types/real.rb +2 -0
  68. data/lib/expressir/model/types/select.rb +2 -0
  69. data/lib/expressir/model/types/set.rb +2 -0
  70. data/lib/expressir/model/types/string.rb +2 -0
  71. data/lib/expressir/model/unique.rb +2 -0
  72. data/lib/expressir/model/variable.rb +2 -0
  73. data/lib/expressir/model/where.rb +2 -0
  74. data/lib/expressir/version.rb +1 -1
  75. data/original/examples/syntax/hyperlink.exp +23 -0
  76. data/original/examples/syntax/hyperlink_formatted.exp +51 -0
  77. data/original/examples/syntax/syntax.exp +18 -18
  78. data/original/examples/syntax/syntax_formatted.exp +32 -24
  79. data/spec/expressir/express_exp/{format_remark_spec.rb → formatter/remark_spec.rb} +2 -2
  80. data/spec/expressir/express_exp/{format_syntax_spec.rb → formatter/syntax_spec.rb} +2 -2
  81. data/spec/expressir/express_exp/hyperlink_formatter_spec.rb +24 -0
  82. data/spec/expressir/express_exp/{head_source_spec.rb → parser/head_source_spec.rb} +1 -1
  83. data/spec/expressir/express_exp/{parse_multiple_spec.rb → parser/multiple_spec.rb} +6 -1
  84. data/spec/expressir/express_exp/{parse_remark_spec.rb → parser/remark_spec.rb} +2 -2
  85. data/spec/expressir/express_exp/{source_spec.rb → parser/source_spec.rb} +1 -1
  86. data/spec/expressir/express_exp/{parse_syntax_spec.rb → parser/syntax_spec.rb} +98 -60
  87. data/spec/expressir/express_exp/schema_head_formatter_spec.rb +36 -0
  88. data/spec/expressir/model/{scope_spec.rb → model_element/find_spec.rb} +7 -2
  89. data/spec/expressir/model/model_element/hash_spec.rb +66 -0
  90. metadata +34 -14
  91. data/lib/expressir/model/scope.rb +0 -63
  92. data/spec/expressir/express_exp/ap233_spec.rb +0 -22
  93. data/spec/expressir/model/model_element_spec.rb +0 -59
@@ -2,7 +2,6 @@ module Expressir
2
2
  module Model
3
3
  module Statements
4
4
  class Alias < ModelElement
5
- include Scope
6
5
  include Identifier
7
6
 
8
7
  attr_accessor :expression
@@ -15,6 +14,8 @@ module Expressir
15
14
 
16
15
  @expression = options[:expression]
17
16
  @statements = options.fetch(:statements, [])
17
+
18
+ super
18
19
  end
19
20
 
20
21
  def children
@@ -8,6 +8,8 @@ module Expressir
8
8
  def initialize(options = {})
9
9
  @ref = options[:ref]
10
10
  @expression = options[:expression]
11
+
12
+ super
11
13
  end
12
14
  end
13
15
  end
@@ -8,6 +8,8 @@ module Expressir
8
8
  def initialize(options = {})
9
9
  @ref = options[:ref]
10
10
  @parameters = options.fetch(:parameters, [])
11
+
12
+ super
11
13
  end
12
14
  end
13
15
  end
@@ -10,6 +10,8 @@ module Expressir
10
10
  @expression = options[:expression]
11
11
  @actions = options.fetch(:actions, [])
12
12
  @otherwise_statement = options[:otherwise_statement]
13
+
14
+ super
13
15
  end
14
16
  end
15
17
  end
@@ -8,6 +8,8 @@ module Expressir
8
8
  def initialize(options = {})
9
9
  @labels = options.fetch(:labels, [])
10
10
  @statement = options[:statement]
11
+
12
+ super
11
13
  end
12
14
  end
13
15
  end
@@ -6,6 +6,8 @@ module Expressir
6
6
 
7
7
  def initialize(options = {})
8
8
  @statements = options.fetch(:statements, [])
9
+
10
+ super
9
11
  end
10
12
  end
11
13
  end
@@ -10,6 +10,8 @@ module Expressir
10
10
  @expression = options[:expression]
11
11
  @statements = options.fetch(:statements, [])
12
12
  @else_statements = options.fetch(:else_statements, [])
13
+
14
+ super
13
15
  end
14
16
  end
15
17
  end
@@ -2,7 +2,6 @@ module Expressir
2
2
  module Model
3
3
  module Statements
4
4
  class Repeat < ModelElement
5
- include Scope
6
5
  include Identifier
7
6
 
8
7
  attr_accessor :bound1
@@ -23,6 +22,8 @@ module Expressir
23
22
  @while_expression = options[:while_expression]
24
23
  @until_expression = options[:until_expression]
25
24
  @statements = options.fetch(:statements, [])
25
+
26
+ super
26
27
  end
27
28
 
28
29
  def children
@@ -6,6 +6,8 @@ module Expressir
6
6
 
7
7
  def initialize(options = {})
8
8
  @expression = options[:expression]
9
+
10
+ super
9
11
  end
10
12
  end
11
13
  end
@@ -1,7 +1,6 @@
1
1
  module Expressir
2
2
  module Model
3
3
  class SubtypeConstraint < ModelElement
4
- include Scope
5
4
  include Identifier
6
5
 
7
6
  attr_accessor :applies_to
@@ -18,6 +17,8 @@ module Expressir
18
17
  @abstract = options[:abstract]
19
18
  @total_over = options[:total_over]
20
19
  @supertype_expression = options[:supertype_expression]
20
+
21
+ super
21
22
  end
22
23
 
23
24
  def children
@@ -1,7 +1,6 @@
1
1
  module Expressir
2
2
  module Model
3
3
  class Type < ModelElement
4
- include Scope
5
4
  include Identifier
6
5
 
7
6
  attr_accessor :type
@@ -16,15 +15,13 @@ module Expressir
16
15
  @type = options[:type]
17
16
  @where = options.fetch(:where, [])
18
17
  @informal_propositions = options.fetch(:informal_propositions, [])
18
+
19
+ super
19
20
  end
20
21
 
21
22
  def children
22
23
  items = []
23
- items.push(*[
24
- *if @type.instance_of? Expressir::Model::Types::Enumeration
25
- @type.items
26
- end
27
- ])
24
+ items.push(*@type.is_a?(Types::Enumeration) ? @type.items : [])
28
25
  items.push(*@where)
29
26
  items.push(*@informal_propositions)
30
27
  items
@@ -12,6 +12,8 @@ module Expressir
12
12
  @source = options[:source]
13
13
 
14
14
  @base_type = options[:base_type]
15
+
16
+ super
15
17
  end
16
18
  end
17
19
  end
@@ -14,6 +14,8 @@ module Expressir
14
14
  @optional = options[:optional]
15
15
  @unique = options[:unique]
16
16
  @base_type = options[:base_type]
17
+
18
+ super
17
19
  end
18
20
  end
19
21
  end
@@ -10,6 +10,8 @@ module Expressir
10
10
  @bound1 = options[:bound1]
11
11
  @bound2 = options[:bound2]
12
12
  @base_type = options[:base_type]
13
+
14
+ super
13
15
  end
14
16
  end
15
17
  end
@@ -8,6 +8,8 @@ module Expressir
8
8
  def initialize(options = {})
9
9
  @width = options[:width]
10
10
  @fixed = options[:fixed]
11
+
12
+ super
11
13
  end
12
14
  end
13
15
  end
@@ -12,6 +12,8 @@ module Expressir
12
12
  @items = options.fetch(:items, [])
13
13
  @extension_type = options[:extension_type]
14
14
  @extension_items = options.fetch(:extension_items, [])
15
+
16
+ super
15
17
  end
16
18
  end
17
19
  end
@@ -8,6 +8,8 @@ module Expressir
8
8
  @id = options[:id]
9
9
  @remarks = options.fetch(:remarks, [])
10
10
  @source = options[:source]
11
+
12
+ super
11
13
  end
12
14
  end
13
15
  end
@@ -8,6 +8,8 @@ module Expressir
8
8
  @id = options[:id]
9
9
  @remarks = options.fetch(:remarks, [])
10
10
  @source = options[:source]
11
+
12
+ super
11
13
  end
12
14
  end
13
15
  end
@@ -12,6 +12,8 @@ module Expressir
12
12
  @bound2 = options[:bound2]
13
13
  @unique = options[:unique]
14
14
  @base_type = options[:base_type]
15
+
16
+ super
15
17
  end
16
18
  end
17
19
  end
@@ -6,6 +6,8 @@ module Expressir
6
6
 
7
7
  def initialize(options = {})
8
8
  @precision = options[:precision]
9
+
10
+ super
9
11
  end
10
12
  end
11
13
  end
@@ -14,6 +14,8 @@ module Expressir
14
14
  @items = options.fetch(:items, [])
15
15
  @extension_type = options[:extension_type]
16
16
  @extension_items = options.fetch(:extension_items, [])
17
+
18
+ super
17
19
  end
18
20
  end
19
21
  end
@@ -10,6 +10,8 @@ module Expressir
10
10
  @bound1 = options[:bound1]
11
11
  @bound2 = options[:bound2]
12
12
  @base_type = options[:base_type]
13
+
14
+ super
13
15
  end
14
16
  end
15
17
  end
@@ -8,6 +8,8 @@ module Expressir
8
8
  def initialize(options = {})
9
9
  @width = options[:width]
10
10
  @fixed = options[:fixed]
11
+
12
+ super
11
13
  end
12
14
  end
13
15
  end
@@ -11,6 +11,8 @@ module Expressir
11
11
  @source = options[:source]
12
12
 
13
13
  @attributes = options.fetch(:attributes, [])
14
+
15
+ super
14
16
  end
15
17
  end
16
18
  end
@@ -13,6 +13,8 @@ module Expressir
13
13
 
14
14
  @type = options[:type]
15
15
  @expression = options[:expression]
16
+
17
+ super
16
18
  end
17
19
  end
18
20
  end
@@ -11,6 +11,8 @@ module Expressir
11
11
  @source = options[:source]
12
12
 
13
13
  @expression = options[:expression]
14
+
15
+ super
14
16
  end
15
17
  end
16
18
  end
@@ -1,3 +1,3 @@
1
1
  module Expressir
2
- VERSION = "0.2.10".freeze
2
+ VERSION = "0.2.15".freeze
3
3
  end
@@ -0,0 +1,23 @@
1
+ SCHEMA hyperlink_schema;
2
+ REFERENCE FROM hyperlink_schema2;
3
+ REFERENCE FROM hyperlink_schema3 (attribute_entity3);
4
+ REFERENCE FROM hyperlink_schema4 (attribute_entity AS attribute_entity4);
5
+ ENTITY test; END_ENTITY;
6
+ ENTITY empty_entity; END_ENTITY;
7
+ ENTITY attribute_entity; test : BOOLEAN; END_ENTITY;
8
+ ENTITY subtype_empty_entity SUBTYPE OF (empty_entity); END_ENTITY;
9
+ ENTITY subtype_attribute_entity SUBTYPE OF (attribute_entity); SELF\attribute_entity.test : BOOLEAN; END_ENTITY;
10
+ ENTITY subtype_attribute_entity2 SUBTYPE OF (attribute_entity2); SELF\attribute_entity2.test : BOOLEAN; END_ENTITY;
11
+ ENTITY subtype_attribute_entity3 SUBTYPE OF (attribute_entity3); SELF\attribute_entity3.test : BOOLEAN; END_ENTITY;
12
+ ENTITY subtype_attribute_entity4 SUBTYPE OF (attribute_entity4); SELF\attribute_entity4.test : BOOLEAN; END_ENTITY;
13
+ ENTITY subtype_missing_entity SUBTYPE OF (missing_entity); END_ENTITY;
14
+ END_SCHEMA;
15
+ SCHEMA hyperlink_schema2;
16
+ ENTITY attribute_entity2; test : BOOLEAN; END_ENTITY;
17
+ END_SCHEMA;
18
+ SCHEMA hyperlink_schema3;
19
+ ENTITY attribute_entity3; test : BOOLEAN; END_ENTITY;
20
+ END_SCHEMA;
21
+ SCHEMA hyperlink_schema4;
22
+ ENTITY attribute_entity; test : BOOLEAN; END_ENTITY;
23
+ END_SCHEMA;
@@ -0,0 +1,51 @@
1
+ SCHEMA hyperlink_schema;
2
+ REFERENCE FROM {{{<<express:hyperlink_schema2,hyperlink_schema2>>}}};
3
+ REFERENCE FROM {{{<<express:hyperlink_schema3,hyperlink_schema3>>}}}
4
+ ({{{<<express:hyperlink_schema3.attribute_entity3,attribute_entity3>>}}});
5
+ REFERENCE FROM {{{<<express:hyperlink_schema4,hyperlink_schema4>>}}}
6
+ ({{{<<express:hyperlink_schema4.attribute_entity,attribute_entity>>}}} AS attribute_entity4);
7
+ ENTITY test;
8
+ END_ENTITY;
9
+ ENTITY empty_entity;
10
+ END_ENTITY;
11
+ ENTITY attribute_entity;
12
+ test : BOOLEAN;
13
+ END_ENTITY;
14
+ ENTITY subtype_empty_entity
15
+ SUBTYPE OF ({{{<<express:hyperlink_schema.empty_entity,empty_entity>>}}});
16
+ END_ENTITY;
17
+ ENTITY subtype_attribute_entity
18
+ SUBTYPE OF ({{{<<express:hyperlink_schema.attribute_entity,attribute_entity>>}}});
19
+ SELF\{{{<<express:hyperlink_schema.attribute_entity,attribute_entity>>}}}.test : BOOLEAN;
20
+ END_ENTITY;
21
+ ENTITY subtype_attribute_entity2
22
+ SUBTYPE OF ({{{<<express:hyperlink_schema2.attribute_entity2,attribute_entity2>>}}});
23
+ SELF\{{{<<express:hyperlink_schema2.attribute_entity2,attribute_entity2>>}}}.test : BOOLEAN;
24
+ END_ENTITY;
25
+ ENTITY subtype_attribute_entity3
26
+ SUBTYPE OF ({{{<<express:hyperlink_schema3.attribute_entity3,attribute_entity3>>}}});
27
+ SELF\{{{<<express:hyperlink_schema3.attribute_entity3,attribute_entity3>>}}}.test : BOOLEAN;
28
+ END_ENTITY;
29
+ ENTITY subtype_attribute_entity4
30
+ SUBTYPE OF ({{{<<express:hyperlink_schema4.attribute_entity,attribute_entity4>>}}});
31
+ SELF\{{{<<express:hyperlink_schema4.attribute_entity,attribute_entity4>>}}}.test : BOOLEAN;
32
+ END_ENTITY;
33
+ ENTITY subtype_missing_entity
34
+ SUBTYPE OF (missing_entity);
35
+ END_ENTITY;
36
+ END_SCHEMA;
37
+ SCHEMA hyperlink_schema2;
38
+ ENTITY attribute_entity2;
39
+ test : BOOLEAN;
40
+ END_ENTITY;
41
+ END_SCHEMA;
42
+ SCHEMA hyperlink_schema3;
43
+ ENTITY attribute_entity3;
44
+ test : BOOLEAN;
45
+ END_ENTITY;
46
+ END_SCHEMA;
47
+ SCHEMA hyperlink_schema4;
48
+ ENTITY attribute_entity;
49
+ test : BOOLEAN;
50
+ END_ENTITY;
51
+ END_SCHEMA;
@@ -31,23 +31,23 @@ ENTITY attribute_entity; test : BOOLEAN; END_ENTITY;
31
31
  ENTITY attribute_optional_entity; test : OPTIONAL BOOLEAN; END_ENTITY;
32
32
  ENTITY attribute_multiple_entity; test : BOOLEAN; test2 : BOOLEAN; END_ENTITY;
33
33
  ENTITY attribute_multiple_shorthand_entity; test, test2 : BOOLEAN; END_ENTITY;
34
- ENTITY attribute_redeclared_entity; SELF\attribute_entity.test : BOOLEAN; END_ENTITY;
35
- ENTITY attribute_redeclared_renamed_entity; SELF\attribute_entity.test RENAMED test2 : BOOLEAN; END_ENTITY;
34
+ ENTITY attribute_redeclared_entity SUBTYPE OF (attribute_entity); SELF\attribute_entity.test : BOOLEAN; END_ENTITY;
35
+ ENTITY attribute_redeclared_renamed_entity SUBTYPE OF (attribute_entity); SELF\attribute_entity.test RENAMED test2 : BOOLEAN; END_ENTITY;
36
36
  ENTITY derived_attribute_entity; DERIVE test : BOOLEAN := TRUE; END_ENTITY;
37
- ENTITY derived_attribute_redeclared_entity; DERIVE SELF\attribute_entity.test : BOOLEAN := TRUE; END_ENTITY;
38
- ENTITY derived_attribute_redeclared_renamed_entity; DERIVE SELF\attribute_entity.test RENAMED test2 : BOOLEAN := TRUE; END_ENTITY;
37
+ ENTITY derived_attribute_redeclared_entity SUBTYPE OF (attribute_entity); DERIVE SELF\attribute_entity.test : BOOLEAN := TRUE; END_ENTITY;
38
+ ENTITY derived_attribute_redeclared_renamed_entity SUBTYPE OF (attribute_entity); DERIVE SELF\attribute_entity.test RENAMED test2 : BOOLEAN := TRUE; END_ENTITY;
39
39
  ENTITY inverse_attribute_entity; INVERSE test : attribute_entity FOR test; END_ENTITY;
40
40
  ENTITY inverse_attribute_entity_entity; INVERSE test : attribute_entity FOR attribute_entity.test; END_ENTITY;
41
41
  ENTITY inverse_attribute_set_entity; INVERSE test : SET OF attribute_entity FOR test; END_ENTITY;
42
42
  ENTITY inverse_attribute_set_bound_entity; INVERSE test : SET [1:9] OF attribute_entity FOR test; END_ENTITY;
43
43
  ENTITY inverse_attribute_bag_entity; INVERSE test : BAG OF attribute_entity FOR test; END_ENTITY;
44
44
  ENTITY inverse_attribute_bag_bound_entity; INVERSE test : BAG [1:9] OF attribute_entity FOR test; END_ENTITY;
45
- ENTITY inverse_attribute_redeclared_entity; INVERSE SELF\attribute_entity.test : attribute_entity FOR test; END_ENTITY;
46
- ENTITY inverse_attribute_redeclared_renamed_entity; INVERSE SELF\attribute_entity.test RENAMED test2 : attribute_entity FOR test; END_ENTITY;
45
+ ENTITY inverse_attribute_redeclared_entity SUBTYPE OF (attribute_entity); INVERSE SELF\attribute_entity.test : attribute_entity FOR test; END_ENTITY;
46
+ ENTITY inverse_attribute_redeclared_renamed_entity SUBTYPE OF (attribute_entity); INVERSE SELF\attribute_entity.test RENAMED test2 : attribute_entity FOR test; END_ENTITY;
47
47
  ENTITY unique_entity; test : BOOLEAN; UNIQUE test; END_ENTITY;
48
48
  ENTITY unique_label_entity; test : BOOLEAN; UNIQUE UR1 : test; END_ENTITY;
49
- ENTITY unique_qualified_entity; UNIQUE SELF\attribute_entity.test; END_ENTITY;
50
- ENTITY unique_label_qualified_entity; UNIQUE UR1 : SELF\attribute_entity.test; END_ENTITY;
49
+ ENTITY unique_redeclared_entity SUBTYPE OF (attribute_entity); UNIQUE SELF\attribute_entity.test; END_ENTITY;
50
+ ENTITY unique_label_redeclared_entity SUBTYPE OF (attribute_entity); UNIQUE UR1 : SELF\attribute_entity.test; END_ENTITY;
51
51
  ENTITY where_entity; WHERE TRUE; END_ENTITY;
52
52
  ENTITY where_label_entity; WHERE WR1 : TRUE; END_ENTITY;
53
53
 
@@ -122,15 +122,15 @@ RULE where_label_rule FOR (empty_entity); WHERE WR1 : TRUE; END_RULE;
122
122
  PROCEDURE statements;
123
123
  -- statements
124
124
  PROCEDURE alias_simple_reference_statement; ALIAS test FOR test; ; END_ALIAS; END_PROCEDURE;
125
- PROCEDURE alias_attribute_reference_statement; ALIAS test FOR test.test; ; END_ALIAS; END_PROCEDURE;
126
- PROCEDURE alias_group_reference_statement; ALIAS test FOR test\test; ; END_ALIAS; END_PROCEDURE;
125
+ PROCEDURE alias_group_reference_statement; ALIAS test FOR test\test2; ; END_ALIAS; END_PROCEDURE;
127
126
  PROCEDURE alias_index_reference_statement; ALIAS test FOR test[1]; ; END_ALIAS; END_PROCEDURE;
128
127
  PROCEDURE alias_index2_reference_statement; ALIAS test FOR test[1:9]; ; END_ALIAS; END_PROCEDURE;
128
+ PROCEDURE alias_attribute_reference_statement; ALIAS test FOR test.test2; ; END_ALIAS; END_PROCEDURE;
129
129
  PROCEDURE assignment_simple_reference_statement; test := TRUE; END_PROCEDURE;
130
- PROCEDURE assignment_attribute_reference_statement; test.test := TRUE; END_PROCEDURE;
131
- PROCEDURE assignment_group_reference_statement; test\test := TRUE; END_PROCEDURE;
130
+ PROCEDURE assignment_group_reference_statement; test\test2 := TRUE; END_PROCEDURE;
132
131
  PROCEDURE assignment_index_reference_statement; test[1] := TRUE; END_PROCEDURE;
133
132
  PROCEDURE assignment_index2_reference_statement; test[1:9] := TRUE; END_PROCEDURE;
133
+ PROCEDURE assignment_attribute_reference_statement; test.test2 := TRUE; END_PROCEDURE;
134
134
  PROCEDURE case_statement; CASE test OF TRUE : ; END_CASE; END_PROCEDURE;
135
135
  PROCEDURE case_multiple_statement; CASE test OF TRUE : ; TRUE : ; END_CASE; END_PROCEDURE;
136
136
  PROCEDURE case_multiple_shorthand_statement; CASE test OF TRUE, TRUE : ; END_CASE; END_PROCEDURE;
@@ -290,7 +290,7 @@ PROCEDURE expressions;
290
290
  and_or_expression : BOOLEAN := TRUE AND FALSE OR TRUE;
291
291
  parenthesis_or_and_expression : BOOLEAN := (TRUE OR FALSE) AND TRUE;
292
292
  and_parenthesis_or_expression : BOOLEAN := TRUE AND (FALSE OR TRUE);
293
- combine_expression : BOOLEAN := test || test;
293
+ combine_expression : BOOLEAN := test || test2;
294
294
  in_expression : BOOLEAN := TRUE IN [TRUE];
295
295
  like_expression : BOOLEAN := 'xxx' LIKE 'xxx';
296
296
 
@@ -304,11 +304,11 @@ PROCEDURE expressions;
304
304
  call_expression : BOOLEAN := parameter_function(TRUE);
305
305
 
306
306
  -- reference expressions
307
- simple_reference_expression : BOOLEAN := simple_string_expression;
308
- attribute_reference_expression : BOOLEAN := simple_string_expression.test;
309
- group_reference_expression : BOOLEAN := simple_string_expression\test;
310
- index_reference_expression : BOOLEAN := simple_string_expression[1];
311
- index2_reference_expression : BOOLEAN := simple_string_expression[1:9];
307
+ simple_reference_expression : BOOLEAN := test;
308
+ group_reference_expression : BOOLEAN := test\test2;
309
+ index_reference_expression : BOOLEAN := test[1];
310
+ index2_reference_expression : BOOLEAN := test[1:9];
311
+ attribute_reference_expression : BOOLEAN := test.test2;
312
312
 
313
313
  -- interval expressions
314
314
  lt_lt_interval_expression : BOOLEAN := {1 < 5 < 9};