rley 0.5.05 → 0.5.06

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +6 -0
  3. data/examples/NLP/mini_en_demo.rb +1 -1
  4. data/examples/data_formats/JSON/json_lexer.rb +4 -4
  5. data/examples/general/calc_iter1/calc_lexer.rb +1 -1
  6. data/examples/general/calc_iter2/calc_ast_builder.rb +51 -23
  7. data/examples/general/calc_iter2/calc_ast_nodes.rb +27 -6
  8. data/examples/general/calc_iter2/calc_demo.rb +2 -1
  9. data/examples/general/calc_iter2/calc_grammar.rb +14 -5
  10. data/examples/general/calc_iter2/calc_lexer.rb +14 -5
  11. data/examples/general/calc_iter2/spec/calculator_spec.rb +140 -23
  12. data/lib/rley.rb +1 -1
  13. data/lib/rley/{parser → base}/base_parser.rb +5 -3
  14. data/lib/rley/{parser → base}/dotted_item.rb +27 -16
  15. data/lib/rley/{parser → base}/grm_items_builder.rb +4 -2
  16. data/lib/rley/constants.rb +1 -1
  17. data/lib/rley/formatter/base_formatter.rb +1 -0
  18. data/lib/rley/gfg/item_vertex.rb +16 -5
  19. data/lib/rley/gfg/non_terminal_vertex.rb +5 -0
  20. data/lib/rley/gfg/vertex.rb +1 -2
  21. data/lib/rley/lexical/token.rb +31 -0
  22. data/lib/rley/{tokens → lexical}/token_range.rb +8 -2
  23. data/lib/rley/parser/gfg_earley_parser.rb +2 -2
  24. data/lib/rley/parser/parse_tree_builder.rb +2 -2
  25. data/lib/rley/ptree/parse_tree_node.rb +2 -2
  26. data/lib/rley/sppf/sppf_node.rb +2 -2
  27. data/lib/rley/syntax/grammar.rb +5 -1
  28. data/lib/rley/syntax/grammar_builder.rb +2 -2
  29. data/lib/rley/syntax/terminal.rb +1 -1
  30. data/spec/rley/{parser → base}/dotted_item_spec.rb +2 -2
  31. data/spec/rley/{parser → base}/grm_items_builder_spec.rb +2 -2
  32. data/spec/rley/formatter/asciitree_spec.rb +6 -6
  33. data/spec/rley/formatter/bracket_notation_spec.rb +6 -6
  34. data/spec/rley/formatter/debug_spec.rb +6 -6
  35. data/spec/rley/formatter/json_spec.rb +6 -6
  36. data/spec/rley/gfg/call_edge_spec.rb +2 -2
  37. data/spec/rley/gfg/grm_flow_graph_spec.rb +2 -2
  38. data/spec/rley/gfg/item_vertex_spec.rb +9 -9
  39. data/spec/rley/gfg/return_edge_spec.rb +2 -2
  40. data/spec/rley/{tokens → lexical}/token_range_spec.rb +2 -2
  41. data/spec/rley/{tokens → lexical}/token_spec.rb +2 -2
  42. data/spec/rley/parse_forest_visitor_spec.rb +1 -1
  43. data/spec/rley/parse_tree_visitor_spec.rb +6 -6
  44. data/spec/rley/parser/ast_builder_spec.rb +1 -1
  45. data/spec/rley/parser/cst_builder_spec.rb +1 -1
  46. data/spec/rley/parser/error_reason_spec.rb +3 -3
  47. data/spec/rley/parser/gfg_chart_spec.rb +4 -4
  48. data/spec/rley/parser/gfg_earley_parser_spec.rb +3 -3
  49. data/spec/rley/parser/gfg_parsing_spec.rb +5 -5
  50. data/spec/rley/parser/groucho_spec.rb +1 -1
  51. data/spec/rley/parser/parse_entry_set_spec.rb +4 -4
  52. data/spec/rley/parser/parse_entry_spec.rb +4 -4
  53. data/spec/rley/parser/parse_state_spec.rb +7 -7
  54. data/spec/rley/parser/parse_tracer_spec.rb +5 -5
  55. data/spec/rley/parser/parse_walker_factory_spec.rb +1 -1
  56. data/spec/rley/ptree/non_terminal_node_spec.rb +1 -1
  57. data/spec/rley/sppf/alternative_node_spec.rb +4 -4
  58. data/spec/rley/sppf/non_terminal_node_spec.rb +2 -2
  59. data/spec/rley/support/ambiguous_grammar_helper.rb +2 -2
  60. data/spec/rley/support/expectation_helper.rb +1 -1
  61. data/spec/rley/support/grammar_ambig01_helper.rb +2 -2
  62. data/spec/rley/support/grammar_arr_int_helper.rb +3 -3
  63. data/spec/rley/support/grammar_b_expr_helper.rb +2 -2
  64. data/spec/rley/support/grammar_helper.rb +3 -3
  65. data/spec/rley/support/grammar_l0_helper.rb +2 -2
  66. data/spec/rley/support/grammar_pb_helper.rb +2 -2
  67. metadata +15 -15
  68. data/lib/rley/tokens/token.rb +0 -14
@@ -3,7 +3,7 @@ require_relative '../../spec_helper'
3
3
  require_relative '../../../lib/rley/syntax/terminal'
4
4
  require_relative '../../../lib/rley/syntax/non_terminal'
5
5
  require_relative '../../../lib/rley/syntax/production'
6
- require_relative '../../../lib/rley/parser/dotted_item'
6
+ require_relative '../../../lib/rley/base/dotted_item'
7
7
 
8
8
  # Load the class under test
9
9
  require_relative '../../../lib/rley/parser/parse_entry'
@@ -24,7 +24,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
24
24
  Syntax::Production.new(nt_sentence, [])
25
25
  end
26
26
 
27
- let(:dotted_rule) { DottedItem.new(sample_prod, 2) }
27
+ let(:dotted_rule) { Base::DottedItem.new(sample_prod, 2) }
28
28
  let(:origin_val) { 3 }
29
29
  let(:vertex_faked) { double('fake-vertex') }
30
30
  let(:vertex2) { double('vertex-mock') }
@@ -129,13 +129,13 @@ module Rley # Open this namespace to avoid module qualifier prefixes
129
129
  expect(instance2).not_to be_entry_entry
130
130
 
131
131
  # Case: item vertex not at begin of rhs
132
- d1 = DottedItem.new(sample_prod, 1)
132
+ d1 = Base::DottedItem.new(sample_prod, 1)
133
133
  v1 = GFG::ItemVertex.new(d1)
134
134
  instance3 = ParseEntry.new(v1, 3)
135
135
  expect(instance3).not_to be_entry_entry
136
136
 
137
137
  # Case: item vertex at end of rhs
138
- d2 = DottedItem.new(sample_prod, 0)
138
+ d2 = Base::DottedItem.new(sample_prod, 0)
139
139
  v2 = GFG::ItemVertex.new(d2)
140
140
  instance4 = ParseEntry.new(v2, 3)
141
141
  expect(instance4).to be_entry_entry
@@ -3,7 +3,7 @@ require_relative '../../spec_helper'
3
3
  require_relative '../../../lib/rley/syntax/terminal'
4
4
  require_relative '../../../lib/rley/syntax/non_terminal'
5
5
  require_relative '../../../lib/rley/syntax/production'
6
- require_relative '../../../lib/rley/parser/dotted_item'
6
+ require_relative '../../../lib/rley/base/dotted_item'
7
7
 
8
8
  # Load the class under test
9
9
  require_relative '../../../lib/rley/parser/parse_state'
@@ -29,7 +29,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
29
29
  end
30
30
 
31
31
  let(:origin_val) { 3 }
32
- let(:dotted_rule) { DottedItem.new(sample_prod, 2) }
32
+ let(:dotted_rule) { Base::DottedItem.new(sample_prod, 2) }
33
33
  let(:other_dotted_rule) { double('mock-dotted-item') }
34
34
 
35
35
  # Default instantiation rule
@@ -77,7 +77,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
77
77
 
78
78
  it 'should know if the parsing is at the start of the production' do
79
79
  expect(subject).not_to be_predicted
80
- at_start = DottedItem.new(sample_prod, 0)
80
+ at_start = Base::DottedItem.new(sample_prod, 0)
81
81
 
82
82
  instance = ParseState.new(at_start, 0)
83
83
  expect(instance).to be_predicted
@@ -85,7 +85,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
85
85
 
86
86
  it 'should know if the parsing reached the end of the production' do
87
87
  expect(subject).not_to be_complete
88
- at_end = DottedItem.new(sample_prod, 3)
88
+ at_end = Base::DottedItem.new(sample_prod, 3)
89
89
 
90
90
  instance = ParseState.new(at_end, 2)
91
91
  expect(instance).to be_complete
@@ -97,12 +97,12 @@ module Rley # Open this namespace to avoid module qualifier prefixes
97
97
 
98
98
  it 'should know whether another instance follows this one' do
99
99
  expect(subject.precedes?(subject)).to eq(false)
100
- state1 = ParseState.new(DottedItem.new(sample_prod, 1), origin_val)
100
+ state1 = ParseState.new(Base::DottedItem.new(sample_prod, 1), origin_val)
101
101
  expect(state1.precedes?(subject)).to eq(true)
102
- state0 = ParseState.new(DottedItem.new(sample_prod, 0), origin_val)
102
+ state0 = ParseState.new(Base::DottedItem.new(sample_prod, 0), origin_val)
103
103
  expect(state0.precedes?(state1)).to eq(true)
104
104
  expect(state0.precedes?(subject)).to eq(false)
105
- state3 = ParseState.new(DottedItem.new(sample_prod, 3), origin_val)
105
+ state3 = ParseState.new(Base::DottedItem.new(sample_prod, 3), origin_val)
106
106
  expect(state3.precedes?(state0)).to eq(false)
107
107
  end
108
108
 
@@ -4,9 +4,9 @@ require 'stringio'
4
4
  require_relative '../../../lib/rley/syntax/terminal'
5
5
  require_relative '../../../lib/rley/syntax/non_terminal'
6
6
  require_relative '../../../lib/rley/syntax/production'
7
- require_relative '../../../lib/rley/parser/dotted_item'
7
+ require_relative '../../../lib/rley/base/dotted_item'
8
8
  require_relative '../../../lib/rley/parser/parse_state'
9
- require_relative '../../../lib/rley/tokens/token'
9
+ require_relative '../../../lib/rley/lexical/token'
10
10
 
11
11
  # Load the class under test
12
12
  require_relative '../../../lib/rley/parser/parse_tracer'
@@ -18,7 +18,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
18
18
 
19
19
  let(:token_seq) do
20
20
  literals = %w[I saw John with a dog]
21
- literals.map { |lexeme| Tokens::Token.new(lexeme, nil) }
21
+ literals.map { |lexeme| Lexical::Token.new(lexeme, nil) }
22
22
  end
23
23
 
24
24
  subject { ParseTracer.new(1, output, token_seq) }
@@ -68,8 +68,8 @@ SNIPPET
68
68
  end
69
69
 
70
70
  let(:origin_val) { 3 }
71
- let(:dotted_rule) { DottedItem.new(sample_prod, 2) }
72
- let(:complete_rule) { DottedItem.new(sample_prod, 3) }
71
+ let(:dotted_rule) { Base::DottedItem.new(sample_prod, 2) }
72
+ let(:complete_rule) { Base::DottedItem.new(sample_prod, 3) }
73
73
  let(:sample_parse_state) { ParseState.new(dotted_rule, origin_val) }
74
74
 
75
75
  # Factory method.
@@ -29,7 +29,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
29
29
  case entry
30
30
  when Parser::ParseEntry
31
31
  expect(entry.to_s).to eq(expectations[1])
32
- when Tokens::Token
32
+ when Lexical::Token
33
33
  expect(entry.lexeme).to eq(expectations[1])
34
34
  end
35
35
  else
@@ -10,7 +10,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
10
10
  describe NonTerminalNode do
11
11
  # Factory method. Generate a range from its boundary values.
12
12
  def range(low, high)
13
- return Tokens::TokenRange.new(low: low, high: high)
13
+ return Lexical::TokenRange.new(low: low, high: high)
14
14
  end
15
15
 
16
16
  let(:sample_symbol) do
@@ -4,8 +4,8 @@ require_relative '../../spec_helper'
4
4
  require_relative '../../../lib/rley/gfg/item_vertex'
5
5
  require_relative '../../../lib/rley/syntax/terminal'
6
6
  require_relative '../../../lib/rley/syntax/production'
7
- require_relative '../../../lib/rley/tokens/token_range'
8
- require_relative '../../../lib/rley/parser/dotted_item'
7
+ require_relative '../../../lib/rley/lexical/token_range'
8
+ require_relative '../../../lib/rley/base/dotted_item'
9
9
 
10
10
  # Load the class under test
11
11
  require_relative '../../../lib/rley/sppf/alternative_node'
@@ -15,7 +15,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
15
15
  describe AlternativeNode do
16
16
  # Factory method. Generate a range from its boundary values.
17
17
  def range(low, high)
18
- return Tokens::TokenRange.new(low: low, high: high)
18
+ return Lexical::TokenRange.new(low: low, high: high)
19
19
  end
20
20
 
21
21
  let(:t_a) { Syntax::Terminal.new('A') }
@@ -25,7 +25,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
25
25
  let(:sample_prod) do
26
26
  Syntax::Production.new(nt_sentence, [t_a, t_b, t_c])
27
27
  end
28
- let(:sample_item) { Parser::DottedItem.new(sample_prod, 3) }
28
+ let(:sample_item) { Base::DottedItem.new(sample_prod, 3) }
29
29
  let(:sample_vertex) { GFG::ItemVertex.new(sample_item) }
30
30
  let(:sample_range) { range(0, 3) }
31
31
 
@@ -2,7 +2,7 @@ require 'ostruct'
2
2
  require_relative '../../spec_helper'
3
3
 
4
4
  require_relative '../../../lib/rley/syntax/non_terminal'
5
- require_relative '../../../lib/rley/tokens/token_range'
5
+ require_relative '../../../lib/rley/lexical/token_range'
6
6
 
7
7
  # Load the class under test
8
8
  require_relative '../../../lib/rley/sppf/non_terminal_node'
@@ -12,7 +12,7 @@ module Rley # Open this namespace to avoid module qualifier prefixes
12
12
  describe NonTerminalNode do
13
13
  # Factory method. Generate a range from its boundary values.
14
14
  def range(low, high)
15
- return Tokens::TokenRange.new(low: low, high: high)
15
+ return Lexical::TokenRange.new(low: low, high: high)
16
16
  end
17
17
 
18
18
  let(:sample_symbol) do
@@ -1,6 +1,6 @@
1
1
  # Load the builder class
2
2
  require_relative '../../../lib/rley/syntax/grammar_builder'
3
- require_relative '../../../lib/rley/tokens/token'
3
+ require_relative '../../../lib/rley/lexical/token'
4
4
 
5
5
 
6
6
  module AmbiguousGrammarHelper
@@ -29,7 +29,7 @@ module AmbiguousGrammarHelper
29
29
  msg = "Unknown input text '#{lexeme}'"
30
30
  raise StandardError, msg
31
31
  end
32
- Rley::Tokens::Token.new(lexeme, terminal)
32
+ Rley::Lexical::Token.new(lexeme, terminal)
33
33
  end
34
34
 
35
35
  return tokens
@@ -1,5 +1,5 @@
1
1
  # Load the builder class
2
- require_relative '../../../lib/rley/tokens/token'
2
+ require_relative '../../../lib/rley/lexical/token'
3
3
 
4
4
 
5
5
  # Mixin module implementing expectation helper methods.
@@ -1,6 +1,6 @@
1
1
  # Load the builder class
2
2
  require_relative '../../../lib/rley/syntax/grammar_builder'
3
- require_relative '../../../lib/rley/tokens/token'
3
+ require_relative '../../../lib/rley/lexical/token'
4
4
 
5
5
 
6
6
  module GrammarAmbig01Helper
@@ -32,7 +32,7 @@ module GrammarAmbig01Helper
32
32
  msg = "Unknown input text '#{lexeme}'"
33
33
  raise StandardError, msg
34
34
  end
35
- Rley::Tokens::Token.new(lexeme, terminal)
35
+ Rley::Lexical::Token.new(lexeme, terminal)
36
36
  end
37
37
 
38
38
  return tokens
@@ -2,7 +2,7 @@ require 'strscan'
2
2
 
3
3
  # Load the builder class
4
4
  require_relative '../../../lib/rley/syntax/grammar_builder'
5
- require_relative '../../../lib/rley/tokens/token'
5
+ require_relative '../../../lib/rley/lexical/token'
6
6
 
7
7
 
8
8
  module GrammarArrIntHelper
@@ -32,13 +32,13 @@ module GrammarArrIntHelper
32
32
  lexeme = scanner.scan(/[\[,\]]/)
33
33
  if lexeme
34
34
  terminal = aGrammar.name2symbol[lexeme]
35
- tokens << Rley::Tokens::Token.new(lexeme, terminal)
35
+ tokens << Rley::Lexical::Token.new(lexeme, terminal)
36
36
  next
37
37
  end
38
38
  lexeme = scanner.scan(/^[-+]?\d+/)
39
39
  if lexeme
40
40
  terminal = aGrammar.name2symbol['integer']
41
- tokens << Rley::Tokens::Token.new(lexeme, terminal)
41
+ tokens << Rley::Lexical::Token.new(lexeme, terminal)
42
42
  else
43
43
  msg = "Unknown input text '#{lexeme}'"
44
44
  raise StandardError, msg
@@ -1,6 +1,6 @@
1
1
  # Load the builder class
2
2
  require_relative '../../../lib/rley/syntax/grammar_builder'
3
- require_relative '../../../lib/rley/tokens/token'
3
+ require_relative '../../../lib/rley/lexical/token'
4
4
 
5
5
 
6
6
  module GrammarBExprHelper
@@ -32,7 +32,7 @@ module GrammarBExprHelper
32
32
  msg = "Unknown input text '#{lexeme}'"
33
33
  raise StandardError, msg
34
34
  end
35
- Rley::Tokens::Token.new(lexeme, terminal)
35
+ Rley::Lexical::Token.new(lexeme, terminal)
36
36
  end
37
37
 
38
38
  return tokens
@@ -1,5 +1,5 @@
1
1
  # Load the builder class
2
- require_relative '../../../lib/rley/tokens/token'
2
+ require_relative '../../../lib/rley/lexical/token'
3
3
 
4
4
 
5
5
  # Mixin module implementing helper methods.
@@ -12,13 +12,13 @@ module GrammarHelper
12
12
  case lexeme
13
13
  when String
14
14
  terminal = aGrammar.name2symbol[lexeme]
15
- Rley::Tokens::Token.new(lexeme, terminal)
15
+ Rley::Lexical::Token.new(lexeme, terminal)
16
16
 
17
17
  when Hash # lexeme is reality a Hash: literal => terminal name
18
18
  sub_array = lexeme.to_a
19
19
  sub_array.map do |(literal, name)|
20
20
  terminal = aGrammar.name2symbol[name]
21
- Rley::Tokens::Token.new(literal, terminal)
21
+ Rley::Lexical::Token.new(literal, terminal)
22
22
  end
23
23
  end
24
24
  end
@@ -1,6 +1,6 @@
1
1
  # Load the builder class
2
2
  require_relative '../../../lib/rley/syntax/grammar_builder'
3
- require_relative '../../../lib/rley/tokens/token'
3
+ require_relative '../../../lib/rley/lexical/token'
4
4
 
5
5
 
6
6
  module GrammarL0Helper
@@ -73,7 +73,7 @@ module GrammarL0Helper
73
73
  raise StandardError, "Word '#{word}' not found in lexicon"
74
74
  end
75
75
  terminal = aGrammar.name2symbol[term_name]
76
- Rley::Tokens::Token.new(word, terminal)
76
+ Rley::Lexical::Token.new(word, terminal)
77
77
  end
78
78
 
79
79
  return tokens
@@ -1,6 +1,6 @@
1
1
  # Load the builder class
2
2
  require_relative '../../../lib/rley/syntax/grammar_builder'
3
- require_relative '../../../lib/rley/tokens/token'
3
+ require_relative '../../../lib/rley/lexical/token'
4
4
 
5
5
 
6
6
  # Utility class.
@@ -38,7 +38,7 @@ class GrammarPBHelper
38
38
  msg = "Unknown input text '#{lexeme}'"
39
39
  raise StandardError, msg
40
40
  end
41
- Rley::Tokens::Token.new(lexeme, terminal)
41
+ Rley::Lexical::Token.new(lexeme, terminal)
42
42
  end
43
43
 
44
44
  return tokens
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rley
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.05
4
+ version: 0.5.06
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dimitri Geshef
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-04 00:00:00.000000000 Z
11
+ date: 2017-11-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: coveralls
@@ -154,6 +154,9 @@ files:
154
154
  - examples/general/calc_iter2/calc_parser.rb
155
155
  - examples/general/calc_iter2/spec/calculator_spec.rb
156
156
  - lib/rley.rb
157
+ - lib/rley/base/base_parser.rb
158
+ - lib/rley/base/dotted_item.rb
159
+ - lib/rley/base/grm_items_builder.rb
157
160
  - lib/rley/constants.rb
158
161
  - lib/rley/formatter/asciitree.rb
159
162
  - lib/rley/formatter/base_formatter.rb
@@ -172,16 +175,15 @@ files:
172
175
  - lib/rley/gfg/shortcut_edge.rb
173
176
  - lib/rley/gfg/start_vertex.rb
174
177
  - lib/rley/gfg/vertex.rb
178
+ - lib/rley/lexical/token.rb
179
+ - lib/rley/lexical/token_range.rb
175
180
  - lib/rley/parse_forest_visitor.rb
176
181
  - lib/rley/parse_tree_visitor.rb
177
- - lib/rley/parser/base_parser.rb
178
182
  - lib/rley/parser/cst_builder.rb
179
- - lib/rley/parser/dotted_item.rb
180
183
  - lib/rley/parser/error_reason.rb
181
184
  - lib/rley/parser/gfg_chart.rb
182
185
  - lib/rley/parser/gfg_earley_parser.rb
183
186
  - lib/rley/parser/gfg_parsing.rb
184
- - lib/rley/parser/grm_items_builder.rb
185
187
  - lib/rley/parser/parse_entry.rb
186
188
  - lib/rley/parser/parse_entry_set.rb
187
189
  - lib/rley/parser/parse_entry_tracker.rb
@@ -217,8 +219,8 @@ files:
217
219
  - lib/rley/syntax/symbol_seq.rb
218
220
  - lib/rley/syntax/terminal.rb
219
221
  - lib/rley/syntax/verbatim_symbol.rb
220
- - lib/rley/tokens/token.rb
221
- - lib/rley/tokens/token_range.rb
222
+ - spec/rley/base/dotted_item_spec.rb
223
+ - spec/rley/base/grm_items_builder_spec.rb
222
224
  - spec/rley/formatter/asciitree_spec.rb
223
225
  - spec/rley/formatter/bracket_notation_spec.rb
224
226
  - spec/rley/formatter/debug_spec.rb
@@ -235,17 +237,17 @@ files:
235
237
  - spec/rley/gfg/shortcut_edge_spec.rb
236
238
  - spec/rley/gfg/start_vertex_spec.rb
237
239
  - spec/rley/gfg/vertex_spec.rb
240
+ - spec/rley/lexical/token_range_spec.rb
241
+ - spec/rley/lexical/token_spec.rb
238
242
  - spec/rley/parse_forest_visitor_spec.rb
239
243
  - spec/rley/parse_tree_visitor_spec.rb
240
244
  - spec/rley/parser/ambiguous_parse_spec.rb
241
245
  - spec/rley/parser/ast_builder_spec.rb
242
246
  - spec/rley/parser/cst_builder_spec.rb
243
- - spec/rley/parser/dotted_item_spec.rb
244
247
  - spec/rley/parser/error_reason_spec.rb
245
248
  - spec/rley/parser/gfg_chart_spec.rb
246
249
  - spec/rley/parser/gfg_earley_parser_spec.rb
247
250
  - spec/rley/parser/gfg_parsing_spec.rb
248
- - spec/rley/parser/grm_items_builder_spec.rb
249
251
  - spec/rley/parser/groucho_spec.rb
250
252
  - spec/rley/parser/parse_entry_set_spec.rb
251
253
  - spec/rley/parser/parse_entry_spec.rb
@@ -281,8 +283,6 @@ files:
281
283
  - spec/rley/syntax/symbol_seq_spec.rb
282
284
  - spec/rley/syntax/terminal_spec.rb
283
285
  - spec/rley/syntax/verbatim_symbol_spec.rb
284
- - spec/rley/tokens/token_range_spec.rb
285
- - spec/rley/tokens/token_spec.rb
286
286
  - spec/spec_helper.rb
287
287
  homepage: https://github.com/famished-tiger/Rley
288
288
  licenses:
@@ -313,6 +313,8 @@ signing_key:
313
313
  specification_version: 4
314
314
  summary: Ruby implementation of the Earley's parsing algorithm
315
315
  test_files:
316
+ - spec/rley/base/dotted_item_spec.rb
317
+ - spec/rley/base/grm_items_builder_spec.rb
316
318
  - spec/rley/formatter/asciitree_spec.rb
317
319
  - spec/rley/formatter/bracket_notation_spec.rb
318
320
  - spec/rley/formatter/debug_spec.rb
@@ -329,15 +331,15 @@ test_files:
329
331
  - spec/rley/gfg/shortcut_edge_spec.rb
330
332
  - spec/rley/gfg/start_vertex_spec.rb
331
333
  - spec/rley/gfg/vertex_spec.rb
334
+ - spec/rley/lexical/token_range_spec.rb
335
+ - spec/rley/lexical/token_spec.rb
332
336
  - spec/rley/parser/ambiguous_parse_spec.rb
333
337
  - spec/rley/parser/ast_builder_spec.rb
334
338
  - spec/rley/parser/cst_builder_spec.rb
335
- - spec/rley/parser/dotted_item_spec.rb
336
339
  - spec/rley/parser/error_reason_spec.rb
337
340
  - spec/rley/parser/gfg_chart_spec.rb
338
341
  - spec/rley/parser/gfg_earley_parser_spec.rb
339
342
  - spec/rley/parser/gfg_parsing_spec.rb
340
- - spec/rley/parser/grm_items_builder_spec.rb
341
343
  - spec/rley/parser/groucho_spec.rb
342
344
  - spec/rley/parser/parse_entry_set_spec.rb
343
345
  - spec/rley/parser/parse_entry_spec.rb
@@ -365,5 +367,3 @@ test_files:
365
367
  - spec/rley/syntax/symbol_seq_spec.rb
366
368
  - spec/rley/syntax/terminal_spec.rb
367
369
  - spec/rley/syntax/verbatim_symbol_spec.rb
368
- - spec/rley/tokens/token_range_spec.rb
369
- - spec/rley/tokens/token_spec.rb
@@ -1,14 +0,0 @@
1
- module Rley # This module is used as a namespace
2
- module Tokens # This module is used as a namespace
3
- class Token
4
- attr_reader(:lexeme)
5
- attr_reader(:terminal)
6
-
7
- def initialize(theLexeme, aTerminal)
8
- @lexeme = theLexeme
9
- @terminal = aTerminal
10
- end
11
- end # class
12
- end # module
13
- end # module
14
- # End of file