rley 0.8.01 → 0.8.02
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +29 -5
- data/CHANGELOG.md +7 -0
- data/examples/NLP/pico_en_demo.rb +2 -2
- data/lib/rley/constants.rb +1 -1
- data/lib/rley/notation/all_notation_nodes.rb +3 -1
- data/lib/rley/notation/ast_builder.rb +185 -191
- data/lib/rley/notation/ast_node.rb +5 -5
- data/lib/rley/notation/ast_visitor.rb +3 -1
- data/lib/rley/notation/grammar.rb +1 -1
- data/lib/rley/notation/grammar_builder.rb +16 -15
- data/lib/rley/notation/grouping_node.rb +1 -1
- data/lib/rley/notation/parser.rb +56 -56
- data/lib/rley/notation/sequence_node.rb +3 -3
- data/lib/rley/notation/symbol_node.rb +2 -2
- data/lib/rley/notation/tokenizer.rb +3 -15
- data/lib/rley/parse_rep/ast_base_builder.rb +5 -6
- data/lib/rley/parser/gfg_chart.rb +5 -4
- data/lib/rley/parser/gfg_earley_parser.rb +1 -1
- data/lib/rley/syntax/base_grammar_builder.rb +3 -3
- data/lib/rley/syntax/match_closest.rb +7 -7
- data/spec/rley/notation/grammar_builder_spec.rb +6 -6
- data/spec/rley/notation/parser_spec.rb +183 -184
- data/spec/rley/notation/tokenizer_spec.rb +98 -104
- data/spec/rley/parser/dangling_else_spec.rb +15 -13
- data/spec/rley/parser/gfg_earley_parser_spec.rb +11 -9
- data/spec/rley/parser/gfg_parsing_spec.rb +1 -0
- data/spec/rley/syntax/base_grammar_builder_spec.rb +0 -1
- data/spec/rley/syntax/match_closest_spec.rb +4 -4
- metadata +2 -2
@@ -16,19 +16,19 @@ module Rley # Open this namespace to avoid module qualifier prefixes
|
|
16
16
|
module Syntax # Open this namespace to avoid module qualifier prefixes
|
17
17
|
describe MatchClosest do
|
18
18
|
# 'stmt' => 'IF boolean THEN stmt ELSE stmt'
|
19
|
-
let(:boolean) { NonTerminal.new('boolean') }
|
19
|
+
let(:boolean) { NonTerminal.new('boolean') }
|
20
20
|
let(:stmt) { NonTerminal.new('stmt') }
|
21
21
|
let(:if_t) { Terminal.new('IF') }
|
22
22
|
let(:then_t) { Terminal.new('THEN') }
|
23
|
-
let(:else_t) { Terminal.new('ELSE') }
|
23
|
+
let(:else_t) { Terminal.new('ELSE') }
|
24
24
|
let(:sequence) { [if_t, boolean, then_t, stmt, else_t, stmt] }
|
25
25
|
let(:prod) { Production.new(stmt, sequence) }
|
26
26
|
|
27
|
-
subject{ MatchClosest.new(prod.rhs.members, 4, 'IF') }
|
27
|
+
subject { MatchClosest.new(prod.rhs.members, 4, 'IF') }
|
28
28
|
|
29
29
|
context 'Initialization:' do
|
30
30
|
it 'should be created with an symbol seq., an indice and a name' do
|
31
|
-
expect { MatchClosest.new(prod.rhs.members, 4, 'IF')
|
31
|
+
expect { MatchClosest.new(prod.rhs.members, 4, 'IF') }.not_to raise_error
|
32
32
|
end
|
33
33
|
|
34
34
|
it 'should know the index argument' do
|
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.8.
|
4
|
+
version: 0.8.02
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dimitri Geshef
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-08-
|
11
|
+
date: 2021-08-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|