webidl 0.1.5 → 0.1.6
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 +7 -0
- data/.gitignore +2 -1
- data/.travis.yml +4 -3
- data/LICENSE +1 -1
- data/README.md +3 -1
- data/lib/webidl/ast/node.rb +3 -1
- data/lib/webidl/ast/operation.rb +1 -1
- data/lib/webidl/generator/ruby_sexp_visitor.rb +60 -4
- data/lib/webidl/parse_tree/dictionary_member.rb +3 -3
- data/lib/webidl/parse_tree/dictionary_members.rb +1 -1
- data/lib/webidl/version.rb +2 -2
- data/spec/ast_spec.rb +15 -0
- data/spec/fixtures/dictionary.idl +4 -0
- data/spec/fixtures/html5.idl +902 -821
- data/spec/parser_spec.rb +0 -1
- data/spec/spec_helper.rb +8 -2
- data/webidl.gemspec +2 -0
- metadata +35 -29
data/spec/parser_spec.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
require 'coveralls'
|
2
|
+
Coveralls.wear!
|
3
|
+
|
1
4
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
2
5
|
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
3
6
|
|
@@ -6,14 +9,17 @@ require 'webidl'
|
|
6
9
|
require 'rspec'
|
7
10
|
require "pp"
|
8
11
|
|
12
|
+
|
9
13
|
# require "ruby-debug"
|
10
14
|
# Debugger.start
|
11
15
|
# Debugger.settings[:autoeval] = true
|
12
16
|
# Debugger.settings[:autolist] = 1
|
13
17
|
|
14
18
|
module ParseHelper
|
19
|
+
CACHE = {}
|
20
|
+
|
15
21
|
def parse(input)
|
16
|
-
result = @parser.parse(input)
|
22
|
+
result = CACHE.fetch(input) { CACHE[input] = @parser.parse(input) }
|
17
23
|
|
18
24
|
unless result
|
19
25
|
raise @parser.failure_reason
|
@@ -40,4 +46,4 @@ RSpec.configure do |c|
|
|
40
46
|
c.before(:each) do
|
41
47
|
@parser = WebIDL::Parser::IDLParser.new
|
42
48
|
end
|
43
|
-
end
|
49
|
+
end
|
data/webidl.gemspec
CHANGED
@@ -16,8 +16,10 @@ Gem::Specification.new do |s|
|
|
16
16
|
|
17
17
|
s.add_runtime_dependency "treetop"
|
18
18
|
s.add_runtime_dependency "ruby2ruby", "~> 1.2.0"
|
19
|
+
|
19
20
|
s.add_development_dependency "rspec", "~> 2.5"
|
20
21
|
s.add_development_dependency "rake", "~> 0.9.2"
|
22
|
+
s.add_development_dependency "coveralls"
|
21
23
|
|
22
24
|
s.files = `git ls-files`.split("\n")
|
23
25
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
metadata
CHANGED
@@ -1,80 +1,85 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: webidl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
5
|
-
prerelease:
|
4
|
+
version: 0.1.6
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Jari Bakken
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-06-09 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: treetop
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: ruby2ruby
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- - ~>
|
31
|
+
- - "~>"
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: 1.2.0
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- - ~>
|
38
|
+
- - "~>"
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: 1.2.0
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: rspec
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- - ~>
|
45
|
+
- - "~>"
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '2.5'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- - ~>
|
52
|
+
- - "~>"
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '2.5'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: rake
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- - ~>
|
59
|
+
- - "~>"
|
68
60
|
- !ruby/object:Gem::Version
|
69
61
|
version: 0.9.2
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- - ~>
|
66
|
+
- - "~>"
|
76
67
|
- !ruby/object:Gem::Version
|
77
68
|
version: 0.9.2
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: coveralls
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
78
83
|
description: Built on Treetop, this gem will parse interface declarations in WebIDL
|
79
84
|
and generate ruby code
|
80
85
|
email:
|
@@ -84,10 +89,10 @@ executables:
|
|
84
89
|
extensions: []
|
85
90
|
extra_rdoc_files: []
|
86
91
|
files:
|
87
|
-
- .document
|
88
|
-
- .gitignore
|
89
|
-
- .tm_properties
|
90
|
-
- .travis.yml
|
92
|
+
- ".document"
|
93
|
+
- ".gitignore"
|
94
|
+
- ".tm_properties"
|
95
|
+
- ".travis.yml"
|
91
96
|
- Gemfile
|
92
97
|
- Guardfile
|
93
98
|
- LICENSE
|
@@ -153,6 +158,7 @@ files:
|
|
153
158
|
- lib/webidl/parser/idl.treetop
|
154
159
|
- lib/webidl/version.rb
|
155
160
|
- spec/ast_spec.rb
|
161
|
+
- spec/fixtures/dictionary.idl
|
156
162
|
- spec/fixtures/empty_interface.idl
|
157
163
|
- spec/fixtures/empty_module.idl
|
158
164
|
- spec/fixtures/exception.idl
|
@@ -182,30 +188,30 @@ files:
|
|
182
188
|
- webidl.gemspec
|
183
189
|
homepage: http://github.com/jarib/webidl
|
184
190
|
licenses: []
|
191
|
+
metadata: {}
|
185
192
|
post_install_message:
|
186
193
|
rdoc_options: []
|
187
194
|
require_paths:
|
188
195
|
- lib
|
189
196
|
required_ruby_version: !ruby/object:Gem::Requirement
|
190
|
-
none: false
|
191
197
|
requirements:
|
192
|
-
- -
|
198
|
+
- - ">="
|
193
199
|
- !ruby/object:Gem::Version
|
194
200
|
version: '0'
|
195
201
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
196
|
-
none: false
|
197
202
|
requirements:
|
198
|
-
- -
|
203
|
+
- - ">="
|
199
204
|
- !ruby/object:Gem::Version
|
200
205
|
version: '0'
|
201
206
|
requirements: []
|
202
207
|
rubyforge_project: webidl
|
203
|
-
rubygems_version:
|
208
|
+
rubygems_version: 2.2.0
|
204
209
|
signing_key:
|
205
|
-
specification_version:
|
210
|
+
specification_version: 4
|
206
211
|
summary: Ruby parser for WebIDL
|
207
212
|
test_files:
|
208
213
|
- spec/ast_spec.rb
|
214
|
+
- spec/fixtures/dictionary.idl
|
209
215
|
- spec/fixtures/empty_interface.idl
|
210
216
|
- spec/fixtures/empty_module.idl
|
211
217
|
- spec/fixtures/exception.idl
|