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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 71beccfb95c0a4189cf8ce034a045240bbc6e106
4
- data.tar.gz: a5afcee79046e4ac0950eb3821ecac6a2f9454f3
2
+ SHA256:
3
+ metadata.gz: dc9d5df974beb55f1dcd05acd6f51c0f972dda5c06b5f87b8be23a11554b26d4
4
+ data.tar.gz: 3076e90311429ff39de7f0a553051a33cb40f4ba97d9231343560bc02a413b6b
5
5
  SHA512:
6
- metadata.gz: a398593d43cdbfa2e513c1259449b604a44e9dab2c4e4dd348c32b660dbab2a7f91618b0e52fb42cf2b54d8c29996ac29a6d17dddea4f4cddac37e2c5c077092
7
- data.tar.gz: cc0aa27ff2139b6f5d8f5e5196705d332f73da5d9f29c60c911b87771752ac97bbc384ba29749e0608b3ef82a9d3393b848c4cf12fa1f74b59e3a8b2b948ce7d
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 | Recommended |
31
- |:---------|:--------------|:------------|
32
- | MRI | >= 1.9.3 | >= 2.1.0 |
33
- | Rubinius | >= 2.2 | >= 2.5.0 |
34
- | JRuby | >= 1.7 | >= 1.7.0 |
35
- | Maglev | Not supported | |
36
- | Topaz | Not supported | |
37
- | mruby | Not supported | |
38
-
39
- For MRI/Rubinius you'll need a C90 compatible compiler such as clang or gcc. For
40
- JRuby you don't need any compilers to be installed as the .jar is packaged with
41
- the Gem itself.
42
-
43
- When hacking on Oga you'll also need to have the following installed:
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 actually parsing
64
- * said input.
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(VALUE token, VALUE self)
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
- RUBY_METHOD_FUNC(ll_driver_each_token),
340
+ ll_driver_each_token,
330
341
  self
331
342
  );
332
343
 
data/lib/libll.jar CHANGED
Binary file
@@ -24,7 +24,7 @@ module LL
24
24
  )
25
25
 
26
26
  template = File.read(TEMPLATE)
27
- erb = ERB.new(template, nil, '-').result(context.get_binding)
27
+ erb = ERB.new(template, trim_mode: '-').result(context.get_binding)
28
28
 
29
29
  return erb
30
30
  end
data/lib/ll/lexer.rb CHANGED
@@ -8,7 +8,7 @@ module LL
8
8
  #
9
9
  class Lexer
10
10
 
11
- # line 12 "lib/ll/lexer.rb"
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 268 "lib/ll/lexer.rb"
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 296 "lib/ll/lexer.rb"
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 507 "lib/ll/lexer.rb"
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 517 "lib/ll/lexer.rb"
516
+ # line 512 "lib/ll/lexer.rb"
517
517
  end
518
518
 
519
519
  if cs == 0
data/lib/ll/setup.rb CHANGED
@@ -7,6 +7,8 @@ require 'libll'
7
7
 
8
8
  #:nocov:
9
9
  if RUBY_PLATFORM == 'java'
10
+ require 'jruby'
11
+
10
12
  org.libll.Libll.load(JRuby.runtime)
11
13
  end
12
14
  #:nocov:
data/lib/ll/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module LL
2
- VERSION = '2.1.2'
2
+ VERSION = '2.1.4'
3
3
  end # LL
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@gmail.com'
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.2
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: 2015-06-03 00:00:00.000000000 Z
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@gmail.com
139
+ email: yorick@yorickpeterse.com
141
140
  executables:
142
141
  - ruby-ll
143
142
  extensions: []
144
143
  extra_rdoc_files: []
145
144
  files:
146
- - doc/driver_architecture.md
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/driver.rb
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/parser.rb
169
+ - lib/ll/code_generator.rb
158
170
  - lib/ll/compiled_configuration.rb
159
- - lib/ll/source_line.rb
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/token.rb
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/epsilon.rb
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/ast/node.rb
172
- - lib/ll/driver_template.erb
173
- - ext/java/Libll.java
174
- - ext/java/org/libll/DriverConfig.java
175
- - ext/java/org/libll/Driver.java
176
- - ext/c/extconf.rb
177
- - ext/c/macros.h
178
- - ext/c/khash.h
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: 1.9.3
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
- rubyforge_project:
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