ruby-ll 2.1.2-java → 2.1.4-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.
- checksums.yaml +5 -5
- data/README.md +14 -14
- data/ext/c/driver.c +15 -4
- data/lib/libll.jar +0 -0
- data/lib/ll/code_generator.rb +1 -1
- data/lib/ll/lexer.rb +5 -5
- data/lib/ll/setup.rb +2 -0
- data/lib/ll/version.rb +1 -1
- data/ruby-ll.gemspec +1 -4
- metadata +78 -83
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: dc9d5df974beb55f1dcd05acd6f51c0f972dda5c06b5f87b8be23a11554b26d4
|
4
|
+
data.tar.gz: 3076e90311429ff39de7f0a553051a33cb40f4ba97d9231343560bc02a413b6b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 591efd124468dd50237e8036ff6d4166e9eba55686109b7a96b30ec19411237dd357759c478a00f6dc658847006616f59810af9dd54c0e50edee15ea4234c7aa
|
7
|
+
data.tar.gz: 62b7e516522508bc3a8e3c14893e932df2028355ed0fa44e753f7842e525451a144fdf5f3842a166e41f32283e61c6375e8db895bfe422368be251cdea22d65d
|
data/README.md
CHANGED
@@ -27,20 +27,20 @@ For more information on LL parsing, see
|
|
27
27
|
|
28
28
|
## Requirements
|
29
29
|
|
30
|
-
| Ruby | Required
|
31
|
-
|
32
|
-
| MRI | >=
|
33
|
-
|
|
34
|
-
|
|
35
|
-
| Maglev | Not supported
|
36
|
-
| Topaz | Not supported
|
37
|
-
| mruby | Not supported
|
38
|
-
|
39
|
-
For MRI
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
When hacking on
|
30
|
+
| Ruby | Required
|
31
|
+
|:---------|:--------------
|
32
|
+
| MRI | >= 2.6.0
|
33
|
+
| JRuby | >= 9.0
|
34
|
+
| Rubinius | Not supported
|
35
|
+
| Maglev | Not supported
|
36
|
+
| Topaz | Not supported
|
37
|
+
| mruby | Not supported
|
38
|
+
|
39
|
+
For MRI you'll need a C90 compatible compiler such as clang or gcc. For JRuby
|
40
|
+
you don't need any compilers to be installed as the .jar is packaged with the
|
41
|
+
Gem itself.
|
42
|
+
|
43
|
+
When hacking on ruby-ll you'll also need to have the following installed:
|
44
44
|
|
45
45
|
* Ragel 6 for building the grammar lexer
|
46
46
|
* javac for building the JRuby extension
|
data/ext/c/driver.c
CHANGED
@@ -60,13 +60,24 @@ VALUE ll_driver_allocate(VALUE klass)
|
|
60
60
|
}
|
61
61
|
|
62
62
|
/**
|
63
|
-
* Callback function for iterating over every input token and
|
64
|
-
*
|
63
|
+
* Callback function for iterating over every input token and parsing it.
|
64
|
+
*
|
65
|
+
* This function is intended to be used as a block callback for Ruby's
|
66
|
+
* `rb_block_call`, and processes a single token per invocation.
|
65
67
|
*
|
66
68
|
* @param token An Array containing the token type as a Symbol and its value.
|
67
69
|
* @param self The Driver instance currently in use.
|
70
|
+
* @param argc The number of additional arguments passed to the block.
|
71
|
+
* @param argv The array of additional arguments passed to the block.
|
72
|
+
* @param block_arg The block argument passed from Ruby (if any).
|
68
73
|
*/
|
69
|
-
VALUE ll_driver_each_token(
|
74
|
+
VALUE ll_driver_each_token(
|
75
|
+
VALUE token,
|
76
|
+
VALUE self,
|
77
|
+
int argc,
|
78
|
+
const VALUE *argv,
|
79
|
+
VALUE block_arg
|
80
|
+
)
|
70
81
|
{
|
71
82
|
VALUE method;
|
72
83
|
VALUE action_args;
|
@@ -326,7 +337,7 @@ VALUE ll_driver_parse(VALUE self)
|
|
326
337
|
id_each_token,
|
327
338
|
0,
|
328
339
|
NULL,
|
329
|
-
|
340
|
+
ll_driver_each_token,
|
330
341
|
self
|
331
342
|
);
|
332
343
|
|
data/lib/libll.jar
CHANGED
Binary file
|
data/lib/ll/code_generator.rb
CHANGED
data/lib/ll/lexer.rb
CHANGED
@@ -8,7 +8,7 @@ module LL
|
|
8
8
|
#
|
9
9
|
class Lexer
|
10
10
|
|
11
|
-
# line
|
11
|
+
# line 9 "lib/ll/lexer.rb"
|
12
12
|
class << self
|
13
13
|
attr_accessor :_ll_lexer_trans_keys
|
14
14
|
private :_ll_lexer_trans_keys, :_ll_lexer_trans_keys=
|
@@ -264,7 +264,7 @@ self.ll_lexer_en_main = 22;
|
|
264
264
|
_ll_lexer_trans_targs = self.class.send(:_ll_lexer_trans_targs)
|
265
265
|
|
266
266
|
|
267
|
-
# line
|
267
|
+
# line 263 "lib/ll/lexer.rb"
|
268
268
|
begin
|
269
269
|
testEof = false
|
270
270
|
_slen, _trans, _keys, _inds, _acts, _nacts = nil
|
@@ -292,7 +292,7 @@ begin
|
|
292
292
|
begin
|
293
293
|
ts = p
|
294
294
|
end
|
295
|
-
# line
|
295
|
+
# line 291 "lib/ll/lexer.rb"
|
296
296
|
end
|
297
297
|
_keys = cs << 1
|
298
298
|
_inds = _ll_lexer_index_offsets[cs]
|
@@ -503,7 +503,7 @@ te = p+1
|
|
503
503
|
# line 168 "lib/ll/lexer.rl"
|
504
504
|
begin
|
505
505
|
act = 23; end
|
506
|
-
# line
|
506
|
+
# line 502 "lib/ll/lexer.rb"
|
507
507
|
end
|
508
508
|
end
|
509
509
|
end
|
@@ -513,7 +513,7 @@ act = 23; end
|
|
513
513
|
# line 1 "NONE"
|
514
514
|
begin
|
515
515
|
ts = nil; end
|
516
|
-
# line
|
516
|
+
# line 512 "lib/ll/lexer.rb"
|
517
517
|
end
|
518
518
|
|
519
519
|
if cs == 0
|
data/lib/ll/setup.rb
CHANGED
data/lib/ll/version.rb
CHANGED
data/ruby-ll.gemspec
CHANGED
@@ -4,7 +4,7 @@ Gem::Specification.new do |s|
|
|
4
4
|
s.name = 'ruby-ll'
|
5
5
|
s.version = LL::VERSION
|
6
6
|
s.authors = ['Yorick Peterse']
|
7
|
-
s.email = 'yorickpeterse
|
7
|
+
s.email = 'yorick@yorickpeterse.com'
|
8
8
|
s.summary = 'An LL(1) parser generator for Ruby.'
|
9
9
|
s.homepage = 'https://github.com/yorickpeterse/ruby-ll'
|
10
10
|
s.description = s.summary
|
@@ -31,9 +31,6 @@ Gem::Specification.new do |s|
|
|
31
31
|
s.extensions = ['ext/c/extconf.rb']
|
32
32
|
end
|
33
33
|
|
34
|
-
s.has_rdoc = 'yard'
|
35
|
-
s.required_ruby_version = '>= 1.9.3'
|
36
|
-
|
37
34
|
s.add_dependency 'ast'
|
38
35
|
s.add_dependency 'ansi'
|
39
36
|
|
metadata
CHANGED
@@ -1,217 +1,212 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-ll
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.1.
|
4
|
+
version: 2.1.4
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Yorick Peterse
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
13
|
+
name: ast
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
15
15
|
requirements:
|
16
|
-
- -
|
16
|
+
- - ">="
|
17
17
|
- !ruby/object:Gem::Version
|
18
18
|
version: '0'
|
19
|
-
name: ast
|
20
|
-
prerelease: false
|
21
19
|
type: :runtime
|
20
|
+
prerelease: false
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
23
22
|
requirements:
|
24
|
-
- -
|
23
|
+
- - ">="
|
25
24
|
- !ruby/object:Gem::Version
|
26
25
|
version: '0'
|
27
26
|
- !ruby/object:Gem::Dependency
|
27
|
+
name: ansi
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
29
29
|
requirements:
|
30
|
-
- -
|
30
|
+
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: '0'
|
33
|
-
name: ansi
|
34
|
-
prerelease: false
|
35
33
|
type: :runtime
|
34
|
+
prerelease: false
|
36
35
|
version_requirements: !ruby/object:Gem::Requirement
|
37
36
|
requirements:
|
38
|
-
- -
|
37
|
+
- - ">="
|
39
38
|
- !ruby/object:Gem::Version
|
40
39
|
version: '0'
|
41
40
|
- !ruby/object:Gem::Dependency
|
41
|
+
name: rake
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
|
-
- -
|
44
|
+
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
46
|
version: '0'
|
47
|
-
name: rake
|
48
|
-
prerelease: false
|
49
47
|
type: :development
|
48
|
+
prerelease: false
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
51
50
|
requirements:
|
52
|
-
- -
|
51
|
+
- - ">="
|
53
52
|
- !ruby/object:Gem::Version
|
54
53
|
version: '0'
|
55
54
|
- !ruby/object:Gem::Dependency
|
55
|
+
name: rspec
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
57
57
|
requirements:
|
58
|
-
- - ~>
|
58
|
+
- - "~>"
|
59
59
|
- !ruby/object:Gem::Version
|
60
60
|
version: '3.0'
|
61
|
-
name: rspec
|
62
|
-
prerelease: false
|
63
61
|
type: :development
|
62
|
+
prerelease: false
|
64
63
|
version_requirements: !ruby/object:Gem::Requirement
|
65
64
|
requirements:
|
66
|
-
- - ~>
|
65
|
+
- - "~>"
|
67
66
|
- !ruby/object:Gem::Version
|
68
67
|
version: '3.0'
|
69
68
|
- !ruby/object:Gem::Dependency
|
69
|
+
name: yard
|
70
70
|
requirement: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
|
-
- -
|
72
|
+
- - ">="
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '0'
|
75
|
-
name: yard
|
76
|
-
prerelease: false
|
77
75
|
type: :development
|
76
|
+
prerelease: false
|
78
77
|
version_requirements: !ruby/object:Gem::Requirement
|
79
78
|
requirements:
|
80
|
-
- -
|
79
|
+
- - ">="
|
81
80
|
- !ruby/object:Gem::Version
|
82
81
|
version: '0'
|
83
82
|
- !ruby/object:Gem::Dependency
|
83
|
+
name: simplecov
|
84
84
|
requirement: !ruby/object:Gem::Requirement
|
85
85
|
requirements:
|
86
|
-
- -
|
86
|
+
- - ">="
|
87
87
|
- !ruby/object:Gem::Version
|
88
88
|
version: '0'
|
89
|
-
name: simplecov
|
90
|
-
prerelease: false
|
91
89
|
type: :development
|
90
|
+
prerelease: false
|
92
91
|
version_requirements: !ruby/object:Gem::Requirement
|
93
92
|
requirements:
|
94
|
-
- -
|
93
|
+
- - ">="
|
95
94
|
- !ruby/object:Gem::Version
|
96
95
|
version: '0'
|
97
96
|
- !ruby/object:Gem::Dependency
|
97
|
+
name: kramdown
|
98
98
|
requirement: !ruby/object:Gem::Requirement
|
99
99
|
requirements:
|
100
|
-
- -
|
100
|
+
- - ">="
|
101
101
|
- !ruby/object:Gem::Version
|
102
102
|
version: '0'
|
103
|
-
name: kramdown
|
104
|
-
prerelease: false
|
105
103
|
type: :development
|
104
|
+
prerelease: false
|
106
105
|
version_requirements: !ruby/object:Gem::Requirement
|
107
106
|
requirements:
|
108
|
-
- -
|
107
|
+
- - ">="
|
109
108
|
- !ruby/object:Gem::Version
|
110
109
|
version: '0'
|
111
110
|
- !ruby/object:Gem::Dependency
|
111
|
+
name: benchmark-ips
|
112
112
|
requirement: !ruby/object:Gem::Requirement
|
113
113
|
requirements:
|
114
|
-
- - ~>
|
114
|
+
- - "~>"
|
115
115
|
- !ruby/object:Gem::Version
|
116
116
|
version: '2.0'
|
117
|
-
name: benchmark-ips
|
118
|
-
prerelease: false
|
119
117
|
type: :development
|
118
|
+
prerelease: false
|
120
119
|
version_requirements: !ruby/object:Gem::Requirement
|
121
120
|
requirements:
|
122
|
-
- - ~>
|
121
|
+
- - "~>"
|
123
122
|
- !ruby/object:Gem::Version
|
124
123
|
version: '2.0'
|
125
124
|
- !ruby/object:Gem::Dependency
|
125
|
+
name: rake-compiler
|
126
126
|
requirement: !ruby/object:Gem::Requirement
|
127
127
|
requirements:
|
128
|
-
- -
|
128
|
+
- - ">="
|
129
129
|
- !ruby/object:Gem::Version
|
130
130
|
version: '0'
|
131
|
-
name: rake-compiler
|
132
|
-
prerelease: false
|
133
131
|
type: :development
|
132
|
+
prerelease: false
|
134
133
|
version_requirements: !ruby/object:Gem::Requirement
|
135
134
|
requirements:
|
136
|
-
- -
|
135
|
+
- - ">="
|
137
136
|
- !ruby/object:Gem::Version
|
138
137
|
version: '0'
|
139
138
|
description: An LL(1) parser generator for Ruby.
|
140
|
-
email: yorickpeterse
|
139
|
+
email: yorick@yorickpeterse.com
|
141
140
|
executables:
|
142
141
|
- ruby-ll
|
143
142
|
extensions: []
|
144
143
|
extra_rdoc_files: []
|
145
144
|
files:
|
146
|
-
-
|
145
|
+
- ".yardopts"
|
146
|
+
- LICENSE
|
147
|
+
- README.md
|
148
|
+
- bin/ruby-ll
|
147
149
|
- doc/css/common.css
|
150
|
+
- doc/driver_architecture.md
|
151
|
+
- ext/c/driver.c
|
152
|
+
- ext/c/driver.h
|
153
|
+
- ext/c/driver_config.c
|
154
|
+
- ext/c/driver_config.h
|
155
|
+
- ext/c/extconf.rb
|
156
|
+
- ext/c/khash.h
|
157
|
+
- ext/c/kvec.h
|
158
|
+
- ext/c/libll.c
|
159
|
+
- ext/c/libll.h
|
160
|
+
- ext/c/macros.h
|
161
|
+
- ext/java/Libll.java
|
162
|
+
- ext/java/org/libll/Driver.java
|
163
|
+
- ext/java/org/libll/DriverConfig.java
|
164
|
+
- lib/libll.jar
|
148
165
|
- lib/ll.rb
|
149
|
-
- lib/ll/
|
150
|
-
- lib/ll/terminal.rb
|
151
|
-
- lib/ll/driver_config.rb
|
152
|
-
- lib/ll/compiled_grammar.rb
|
166
|
+
- lib/ll/ast/node.rb
|
153
167
|
- lib/ll/branch.rb
|
154
|
-
- lib/ll/lexer.rb
|
155
|
-
- lib/ll/code_generator.rb
|
156
168
|
- lib/ll/cli.rb
|
157
|
-
- lib/ll/
|
169
|
+
- lib/ll/code_generator.rb
|
158
170
|
- lib/ll/compiled_configuration.rb
|
159
|
-
- lib/ll/
|
160
|
-
- lib/ll/version.rb
|
161
|
-
- lib/ll/rule.rb
|
171
|
+
- lib/ll/compiled_grammar.rb
|
162
172
|
- lib/ll/configuration_compiler.rb
|
163
|
-
- lib/ll/
|
173
|
+
- lib/ll/driver.rb
|
174
|
+
- lib/ll/driver_config.rb
|
175
|
+
- lib/ll/driver_template.erb
|
176
|
+
- lib/ll/epsilon.rb
|
164
177
|
- lib/ll/erb_context.rb
|
165
178
|
- lib/ll/grammar_compiler.rb
|
166
|
-
- lib/ll/
|
167
|
-
- lib/ll/parser_error.rb
|
168
|
-
- lib/ll/setup.rb
|
179
|
+
- lib/ll/lexer.rb
|
169
180
|
- lib/ll/message.rb
|
170
181
|
- lib/ll/operator.rb
|
171
|
-
- lib/ll/
|
172
|
-
- lib/ll/
|
173
|
-
-
|
174
|
-
-
|
175
|
-
-
|
176
|
-
-
|
177
|
-
-
|
178
|
-
-
|
179
|
-
- ext/c/driver.c
|
180
|
-
- ext/c/driver_config.h
|
181
|
-
- ext/c/driver_config.c
|
182
|
-
- ext/c/libll.h
|
183
|
-
- ext/c/kvec.h
|
184
|
-
- ext/c/libll.c
|
185
|
-
- ext/c/driver.h
|
186
|
-
- README.md
|
187
|
-
- LICENSE
|
182
|
+
- lib/ll/parser.rb
|
183
|
+
- lib/ll/parser_error.rb
|
184
|
+
- lib/ll/rule.rb
|
185
|
+
- lib/ll/setup.rb
|
186
|
+
- lib/ll/source_line.rb
|
187
|
+
- lib/ll/terminal.rb
|
188
|
+
- lib/ll/token.rb
|
189
|
+
- lib/ll/version.rb
|
188
190
|
- ruby-ll.gemspec
|
189
|
-
- .yardopts
|
190
|
-
- bin/ruby-ll
|
191
|
-
- lib/libll.jar
|
192
191
|
homepage: https://github.com/yorickpeterse/ruby-ll
|
193
192
|
licenses:
|
194
193
|
- MPL-2.0
|
195
194
|
metadata: {}
|
196
|
-
post_install_message:
|
197
195
|
rdoc_options: []
|
198
196
|
require_paths:
|
199
197
|
- lib
|
200
198
|
required_ruby_version: !ruby/object:Gem::Requirement
|
201
199
|
requirements:
|
202
|
-
- -
|
200
|
+
- - ">="
|
203
201
|
- !ruby/object:Gem::Version
|
204
|
-
version:
|
202
|
+
version: '0'
|
205
203
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
206
204
|
requirements:
|
207
|
-
- -
|
205
|
+
- - ">="
|
208
206
|
- !ruby/object:Gem::Version
|
209
207
|
version: '0'
|
210
208
|
requirements: []
|
211
|
-
|
212
|
-
rubygems_version: 2.1.9
|
213
|
-
signing_key:
|
209
|
+
rubygems_version: 3.6.9
|
214
210
|
specification_version: 4
|
215
211
|
summary: An LL(1) parser generator for Ruby.
|
216
212
|
test_files: []
|
217
|
-
has_rdoc: yard
|