bel_parser 1.0.8-java → 1.1.1-java

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 (112) hide show
  1. checksums.yaml +4 -4
  2. data/{.gemspec-java → .gemspec} +11 -4
  3. data/VERSION +1 -1
  4. data/bin/bel2_compatibility +12 -9
  5. data/bin/bel2_upgrade +18 -6
  6. data/bin/bel2_validator +6 -3
  7. data/bin/bel_script_reader +1 -0
  8. data/lib/bel_parser/completion.rb +984 -0
  9. data/lib/bel_parser/language/apply_namespace_encoding.rb +14 -3
  10. data/lib/bel_parser/language/expression_validator.rb +1 -2
  11. data/lib/bel_parser/language/function.rb +4 -0
  12. data/lib/bel_parser/language/relationship.rb +4 -0
  13. data/lib/bel_parser/language/semantics/function_deprecation.rb +1 -0
  14. data/lib/bel_parser/language/semantics/list_function_subject.rb +2 -0
  15. data/lib/bel_parser/language/semantics/multiple_subject_object.rb +4 -1
  16. data/lib/bel_parser/language/semantics/nested_statement_without_object.rb +43 -0
  17. data/lib/bel_parser/language/semantics/non_object_list.rb +3 -0
  18. data/lib/bel_parser/language/semantics/relationship_not_listable.rb +2 -0
  19. data/lib/bel_parser/language/semantics/signature_mapping.rb +2 -0
  20. data/lib/bel_parser/language/semantics_ast.rb +0 -7
  21. data/lib/bel_parser/language/syntax/invalid_function.rb +6 -1
  22. data/lib/bel_parser/language/syntax/invalid_relationship.rb +1 -0
  23. data/lib/bel_parser/language/version1_0/relationships/acts_in.rb +9 -9
  24. data/lib/bel_parser/language/version1_0/relationships/analogous.rb +6 -4
  25. data/lib/bel_parser/language/version1_0/relationships/association.rb +8 -7
  26. data/lib/bel_parser/language/version1_0/relationships/biomarker_for.rb +6 -5
  27. data/lib/bel_parser/language/version1_0/relationships/causes_no_change.rb +8 -7
  28. data/lib/bel_parser/language/version1_0/relationships/decreases.rb +13 -12
  29. data/lib/bel_parser/language/version1_0/relationships/directly_decreases.rb +8 -6
  30. data/lib/bel_parser/language/version1_0/relationships/directly_increases.rb +8 -6
  31. data/lib/bel_parser/language/version1_0/relationships/has_component.rb +14 -14
  32. data/lib/bel_parser/language/version1_0/relationships/has_components.rb +12 -11
  33. data/lib/bel_parser/language/version1_0/relationships/has_member.rb +10 -8
  34. data/lib/bel_parser/language/version1_0/relationships/has_members.rb +12 -11
  35. data/lib/bel_parser/language/version1_0/relationships/has_modification.rb +9 -7
  36. data/lib/bel_parser/language/version1_0/relationships/has_product.rb +10 -8
  37. data/lib/bel_parser/language/version1_0/relationships/has_variant.rb +9 -7
  38. data/lib/bel_parser/language/version1_0/relationships/includes.rb +11 -10
  39. data/lib/bel_parser/language/version1_0/relationships/increases.rb +12 -13
  40. data/lib/bel_parser/language/version1_0/relationships/is_a.rb +10 -8
  41. data/lib/bel_parser/language/version1_0/relationships/negative_correlation.rb +9 -7
  42. data/lib/bel_parser/language/version1_0/relationships/orthologous.rb +9 -8
  43. data/lib/bel_parser/language/version1_0/relationships/positive_correlation.rb +8 -5
  44. data/lib/bel_parser/language/version1_0/relationships/prognostic_biomarker_for.rb +8 -6
  45. data/lib/bel_parser/language/version1_0/relationships/rate_limiting_step_of.rb +10 -9
  46. data/lib/bel_parser/language/version1_0/relationships/reactant_in.rb +10 -8
  47. data/lib/bel_parser/language/version1_0/relationships/sub_process_of.rb +13 -12
  48. data/lib/bel_parser/language/version1_0/relationships/transcribed_to.rb +8 -7
  49. data/lib/bel_parser/language/version1_0/relationships/translated_to.rb +9 -7
  50. data/lib/bel_parser/language/version1_0/relationships/translocates.rb +10 -9
  51. data/lib/bel_parser/language/version2_0/functions/protein_modification.rb +1 -2
  52. data/lib/bel_parser/language/version2_0/functions/translocation.rb +1 -2
  53. data/lib/bel_parser/language/version2_0/functions/variant.rb +1 -2
  54. data/lib/bel_parser/language/version2_0/relationships/acts_in.rb +10 -9
  55. data/lib/bel_parser/language/version2_0/relationships/biomarker_for.rb +7 -5
  56. data/lib/bel_parser/language/version2_0/relationships/causes_no_change.rb +9 -7
  57. data/lib/bel_parser/language/version2_0/relationships/decreases.rb +13 -12
  58. data/lib/bel_parser/language/version2_0/relationships/directly_decreases.rb +8 -6
  59. data/lib/bel_parser/language/version2_0/relationships/directly_increases.rb +8 -6
  60. data/lib/bel_parser/language/version2_0/relationships/has_component.rb +15 -14
  61. data/lib/bel_parser/language/version2_0/relationships/has_components.rb +12 -11
  62. data/lib/bel_parser/language/version2_0/relationships/has_member.rb +9 -8
  63. data/lib/bel_parser/language/version2_0/relationships/has_members.rb +12 -11
  64. data/lib/bel_parser/language/version2_0/relationships/has_modification.rb +9 -7
  65. data/lib/bel_parser/language/version2_0/relationships/has_product.rb +10 -8
  66. data/lib/bel_parser/language/version2_0/relationships/has_variant.rb +9 -7
  67. data/lib/bel_parser/language/version2_0/relationships/includes.rb +11 -10
  68. data/lib/bel_parser/language/version2_0/relationships/increases.rb +13 -12
  69. data/lib/bel_parser/language/version2_0/relationships/is_a.rb +10 -8
  70. data/lib/bel_parser/language/version2_0/relationships/negative_correlation.rb +9 -7
  71. data/lib/bel_parser/language/version2_0/relationships/orthologous.rb +10 -8
  72. data/lib/bel_parser/language/version2_0/relationships/positive_correlation.rb +7 -5
  73. data/lib/bel_parser/language/version2_0/relationships/prognostic_biomarker_for.rb +8 -6
  74. data/lib/bel_parser/language/version2_0/relationships/rate_limiting_step_of.rb +10 -9
  75. data/lib/bel_parser/language/version2_0/relationships/reactant_in.rb +10 -8
  76. data/lib/bel_parser/language/version2_0/relationships/regulates.rb +9 -8
  77. data/lib/bel_parser/language/version2_0/relationships/sub_process_of.rb +13 -12
  78. data/lib/bel_parser/language/version2_0/relationships/transcribed_to.rb +8 -7
  79. data/lib/bel_parser/language/version2_0/relationships/translated_to.rb +9 -7
  80. data/lib/bel_parser/language/version2_0/relationships/translocates.rb +10 -9
  81. data/lib/bel_parser/mixin/levenshtein.rb +20 -0
  82. data/lib/bel_parser/parsers/ast/node.rb +49 -2
  83. data/lib/bel_parser/parsers/bel_script/define_annotation.rb +156 -156
  84. data/lib/bel_parser/parsers/bel_script/define_namespace.rb +60 -60
  85. data/lib/bel_parser/parsers/bel_script/set.rb +200 -200
  86. data/lib/bel_parser/parsers/bel_script/set_document.rb +188 -188
  87. data/lib/bel_parser/parsers/bel_script/unset.rb +14 -14
  88. data/lib/bel_parser/parsers/common/common.rl +1 -0
  89. data/lib/bel_parser/parsers/common/function.rb +8 -8
  90. data/lib/bel_parser/parsers/common/function.rl +6 -6
  91. data/lib/bel_parser/parsers/common/identifier.rb +3 -3
  92. data/lib/bel_parser/parsers/common/identifier.rl +4 -4
  93. data/lib/bel_parser/parsers/common/list.rb +78 -78
  94. data/lib/bel_parser/parsers/common/multi_identifier.rb +275 -0
  95. data/lib/bel_parser/parsers/common/multi_identifier.rl +141 -0
  96. data/lib/bel_parser/parsers/common/string.rb +6 -6
  97. data/lib/bel_parser/parsers/common/string.rl +4 -4
  98. data/lib/bel_parser/parsers/common.rb +1 -0
  99. data/lib/bel_parser/parsers/expression/nested_statement.rb +30180 -29055
  100. data/lib/bel_parser/parsers/expression/observed_term.rb +1456 -1099
  101. data/lib/bel_parser/parsers/expression/parameter.rb +192 -111
  102. data/lib/bel_parser/parsers/expression/parameter.rl +6 -3
  103. data/lib/bel_parser/parsers/expression/relationship.rb +43 -19
  104. data/lib/bel_parser/parsers/expression/relationship.rl +1 -0
  105. data/lib/bel_parser/parsers/expression/simple_statement.rb +17805 -17093
  106. data/lib/bel_parser/parsers/expression/statement_autocomplete.rb +1035 -0
  107. data/lib/bel_parser/parsers/expression/statement_autocomplete.rl +736 -0
  108. data/lib/bel_parser/parsers/expression/term.rb +960 -705
  109. data/lib/bel_parser/parsers/serializer.rb +8 -4
  110. data/lib/bel_parser/version.rb +33 -0
  111. data/lib/bel_parser.rb +3 -0
  112. metadata +26 -4
@@ -10,14 +10,14 @@
10
10
  action add_ident_param_value {
11
11
  trace('PARAMETER add_ident_param_value')
12
12
  ident = @buffers.delete(:ident)
13
- value_node = value(ident, complete: ident.complete)
13
+ value_node = value(ident, complete: ident.complete, character_range: ident.character_range)
14
14
  @buffers[:param_value] = value_node
15
15
  }
16
16
 
17
17
  action add_string_param_value {
18
18
  trace('PARAMETER add_string_param_value')
19
19
  string_node = @buffers.delete(:string)
20
- value_node = value(string_node, complete: string_node.complete)
20
+ value_node = value(string_node, complete: string_node.complete, character_range: string_node.character_range)
21
21
  @buffers[:param_value] = value_node
22
22
  }
23
23
 
@@ -32,6 +32,7 @@
32
32
  trace('PN incomplete')
33
33
  completed = false
34
34
  end
35
+ param_start = prefix_node.range_start
35
36
  else
36
37
  prefix_node = prefix(nil)
37
38
  prefix_node.complete = true
@@ -48,6 +49,8 @@
48
49
  trace('VN incomplete')
49
50
  completed = false
50
51
  end
52
+ param_start ||= value_node.range_start
53
+ param_node.character_range = [param_start, value_node.range_end]
51
54
  else
52
55
  completed = false
53
56
  end
@@ -59,7 +62,7 @@
59
62
  action add_prefix {
60
63
  trace('PARAMETER add_prefix')
61
64
  ident = @buffers.delete(:ident)
62
- prefix_node = prefix(ident, complete: ident.complete)
65
+ prefix_node = prefix(ident, complete: ident.complete, character_range: ident.character_range)
63
66
  @buffers[:param_prefix] = prefix_node
64
67
  }
65
68
 
@@ -46,8 +46,8 @@ class << self
46
46
  private :_bel_trans_keys, :_bel_trans_keys=
47
47
  end
48
48
  self._bel_trans_keys = [
49
- 0, 0, 33, 126, 33, 126,
50
- 0
49
+ 0, 0, 33, 126, 10, 126,
50
+ 0, 0, 0
51
51
  ]
52
52
 
53
53
  class << self
@@ -55,7 +55,7 @@ class << self
55
55
  private :_bel_key_spans, :_bel_key_spans=
56
56
  end
57
57
  self._bel_key_spans = [
58
- 0, 94, 94
58
+ 0, 94, 117, 0
59
59
  ]
60
60
 
61
61
  class << self
@@ -63,7 +63,7 @@ class << self
63
63
  private :_bel_index_offsets, :_bel_index_offsets=
64
64
  end
65
65
  self._bel_index_offsets = [
66
- 0, 0, 95
66
+ 0, 0, 95, 213
67
67
  ]
68
68
 
69
69
  class << self
@@ -83,18 +83,21 @@ self._bel_indicies = [
83
83
  0, 0, 0, 0, 0, 0, 0, 0,
84
84
  0, 0, 0, 0, 0, 0, 0, 0,
85
85
  0, 0, 0, 0, 0, 0, 1, 2,
86
- 2, 2, 2, 2, 2, 2, 2, 2,
87
- 2, 2, 2, 2, 2, 2, 2, 2,
88
- 2, 2, 2, 2, 2, 2, 2, 2,
89
- 2, 2, 2, 2, 2, 2, 2, 2,
90
- 2, 2, 2, 2, 2, 2, 2, 2,
91
- 2, 2, 2, 2, 2, 2, 2, 2,
92
- 2, 2, 2, 2, 2, 2, 2, 2,
93
- 2, 2, 2, 2, 2, 2, 2, 2,
94
- 2, 2, 2, 2, 2, 2, 2, 2,
95
- 2, 2, 2, 2, 2, 2, 2, 2,
96
- 2, 2, 2, 2, 2, 2, 2, 2,
97
- 2, 2, 2, 2, 2, 1, 0
86
+ 1, 1, 1, 1, 1, 1, 1, 1,
87
+ 1, 1, 1, 1, 1, 1, 1, 1,
88
+ 1, 1, 1, 1, 1, 1, 3, 3,
89
+ 3, 3, 3, 3, 3, 3, 3, 3,
90
+ 3, 3, 3, 3, 3, 3, 3, 3,
91
+ 3, 3, 3, 3, 3, 3, 3, 3,
92
+ 3, 3, 3, 3, 3, 3, 3, 3,
93
+ 3, 3, 3, 3, 3, 3, 3, 3,
94
+ 3, 3, 3, 3, 3, 3, 3, 3,
95
+ 3, 3, 3, 3, 3, 3, 3, 3,
96
+ 3, 3, 3, 3, 3, 3, 3, 3,
97
+ 3, 3, 3, 3, 3, 3, 3, 3,
98
+ 3, 3, 3, 3, 3, 3, 3, 3,
99
+ 3, 3, 3, 3, 3, 3, 3, 3,
100
+ 3, 3, 3, 3, 1, 1, 0
98
101
  ]
99
102
 
100
103
  class << self
@@ -102,7 +105,7 @@ class << self
102
105
  private :_bel_trans_targs, :_bel_trans_targs=
103
106
  end
104
107
  self._bel_trans_targs = [
105
- 2, 0, 2
108
+ 2, 0, 3, 2
106
109
  ]
107
110
 
108
111
  class << self
@@ -110,7 +113,7 @@ class << self
110
113
  private :_bel_trans_actions, :_bel_trans_actions=
111
114
  end
112
115
  self._bel_trans_actions = [
113
- 1, 0, 0
116
+ 1, 0, 3, 0
114
117
  ]
115
118
 
116
119
  class << self
@@ -118,7 +121,7 @@ class << self
118
121
  private :_bel_eof_actions, :_bel_eof_actions=
119
122
  end
120
123
  self._bel_eof_actions = [
121
- 0, 0, 2
124
+ 0, 0, 2, 4
122
125
  ]
123
126
 
124
127
  class << self
@@ -205,6 +208,14 @@ begin
205
208
  trace('RELATIONSHIP start_relationship')
206
209
  p_start = p;
207
210
  end
211
+ when 3 then
212
+ begin
213
+
214
+ trace('RELATIONSHIP stop_relationship')
215
+ # It's not you, it's me. You're a p and I'm a non-protein coding r. It
216
+ # would never work, I just can't reach you.
217
+ p_end = p;
218
+ end
208
219
  end
209
220
  end
210
221
  end
@@ -222,6 +233,19 @@ begin
222
233
  if _goto_level <= _test_eof
223
234
  if p == eof
224
235
  case _bel_eof_actions[cs]
236
+ when 4 then
237
+ begin
238
+
239
+ trace('RELATIONSHIP relationship_end')
240
+ chars = data[p_start...p_end]
241
+ completed = !chars.empty?
242
+ ast_node = relationship(utf8_string(chars), complete: completed)
243
+ @buffers[:relationship] = ast_node
244
+ end
245
+ begin
246
+
247
+ yield @buffers[:relationship]
248
+ end
225
249
  when 2 then
226
250
  begin
227
251
 
@@ -33,6 +33,7 @@
33
33
  RELATIONSHIP
34
34
  >start_relationship
35
35
  %stop_relationship
36
+ NL?
36
37
  ;
37
38
 
38
39
  relationship_node :=