rubinius-toolset 2.3.1 → 3.0
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 +4 -4
- data/lib/rubinius/{toolset.rb → code/toolset.rb} +1 -1
- data/lib/rubinius/{toolset → code/toolset}/version.rb +1 -1
- metadata +12 -23
- data/.gitignore +0 -17
- data/.travis.yml +0 -9
- data/Gemfile +0 -4
- data/LICENSE +0 -25
- data/README.md +0 -86
- data/Rakefile +0 -1
- data/rubinius-toolset.gemspec +0 -30
- data/spec/spec_helper.rb +0 -3
- data/spec/toolset_spec.rb +0 -68
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6a37c0c8e94f00ae6d7b7951d48071cd289b741e
|
4
|
+
data.tar.gz: 372fd02cc7a7210e291b4f47a377d44d8057ad31
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3f26c45d585c3a55050af09f15b561fcb4e34c71e4550e99611bf96028eaf1c9a4a42816e07143aecb30cd715356393e40c98d44d06a67c55d40d007a97ab31f
|
7
|
+
data.tar.gz: b87b5dacc41b108269807e235a2d033a207e54fb9ffd147d38c1b5a334e451b6feee481f66887cb67e6398d960a6cd43ede882ab0cf7cb624af0d2eb7c84e862
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubinius-toolset
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: '3.0'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brian Shirai
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-01-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -17,8 +17,8 @@ dependencies:
|
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.3'
|
20
|
-
type: :development
|
21
20
|
prerelease: false
|
21
|
+
type: :development
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
@@ -31,8 +31,8 @@ dependencies:
|
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '10.0'
|
34
|
-
type: :development
|
35
34
|
prerelease: false
|
35
|
+
type: :development
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
@@ -45,8 +45,8 @@ dependencies:
|
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '1.5'
|
48
|
-
type: :development
|
49
48
|
prerelease: false
|
49
|
+
type: :development
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
@@ -59,8 +59,8 @@ dependencies:
|
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '1.0'
|
62
|
-
type: :development
|
63
62
|
prerelease: false
|
63
|
+
type: :development
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
@@ -79,20 +79,11 @@ executables: []
|
|
79
79
|
extensions: []
|
80
80
|
extra_rdoc_files: []
|
81
81
|
files:
|
82
|
-
-
|
83
|
-
-
|
84
|
-
-
|
85
|
-
- LICENSE
|
86
|
-
- README.md
|
87
|
-
- Rakefile
|
88
|
-
- lib/rubinius/toolset.rb
|
89
|
-
- lib/rubinius/toolset/version.rb
|
90
|
-
- rubinius-toolset.gemspec
|
91
|
-
- spec/spec_helper.rb
|
92
|
-
- spec/toolset_spec.rb
|
93
|
-
homepage: https://github.com/rubinius/rubinius-toolset
|
82
|
+
- lib/rubinius/code/toolset.rb
|
83
|
+
- lib/rubinius/code/toolset/version.rb
|
84
|
+
homepage: https://github.com/rubinius/rubinius-code
|
94
85
|
licenses:
|
95
|
-
-
|
86
|
+
- MPL-2.0
|
96
87
|
metadata: {}
|
97
88
|
post_install_message:
|
98
89
|
rdoc_options: []
|
@@ -110,10 +101,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
110
101
|
version: '0'
|
111
102
|
requirements: []
|
112
103
|
rubyforge_project:
|
113
|
-
rubygems_version: 2.
|
104
|
+
rubygems_version: 2.5.1
|
114
105
|
signing_key:
|
115
106
|
specification_version: 4
|
116
107
|
summary: A registry for Rubinius code tools
|
117
|
-
test_files:
|
118
|
-
- spec/spec_helper.rb
|
119
|
-
- spec/toolset_spec.rb
|
108
|
+
test_files: []
|
data/.gitignore
DELETED
data/.travis.yml
DELETED
data/Gemfile
DELETED
data/LICENSE
DELETED
@@ -1,25 +0,0 @@
|
|
1
|
-
Copyright (c) 2013, Brian Shirai
|
2
|
-
All rights reserved.
|
3
|
-
|
4
|
-
Redistribution and use in source and binary forms, with or without
|
5
|
-
modification, are permitted provided that the following conditions are met:
|
6
|
-
|
7
|
-
1. Redistributions of source code must retain the above copyright notice, this
|
8
|
-
list of conditions and the following disclaimer.
|
9
|
-
2. Redistributions in binary form must reproduce the above copyright notice,
|
10
|
-
this list of conditions and the following disclaimer in the documentation
|
11
|
-
and/or other materials provided with the distribution.
|
12
|
-
3. Neither the name of the library nor the names of its contributors may be
|
13
|
-
used to endorse or promote products derived from this software without
|
14
|
-
specific prior written permission.
|
15
|
-
|
16
|
-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
17
|
-
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
18
|
-
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
19
|
-
DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY DIRECT,
|
20
|
-
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
21
|
-
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
22
|
-
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
|
23
|
-
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
24
|
-
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
25
|
-
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
data/README.md
DELETED
@@ -1,86 +0,0 @@
|
|
1
|
-
# Rubinius::Toolsets
|
2
|
-
|
3
|
-
Rubinius::ToolSets provides a registry for code tools.
|
4
|
-
|
5
|
-
The goal of ToolSets is to provide a mechanism for sharing as much as possible
|
6
|
-
between the Rubinius build tools (e.g. the parser, the AST, tools to operate
|
7
|
-
on bytecode) and custom build tools for specific tasks or for other languages
|
8
|
-
targeting Rubinius.
|
9
|
-
|
10
|
-
## Installation
|
11
|
-
|
12
|
-
Add this line to your application's Gemfile:
|
13
|
-
|
14
|
-
gem 'rubinius-toolset'
|
15
|
-
|
16
|
-
And then execute:
|
17
|
-
|
18
|
-
$ bundle
|
19
|
-
|
20
|
-
Or install it yourself as:
|
21
|
-
|
22
|
-
$ gem install rubinius-toolset
|
23
|
-
|
24
|
-
## Usage
|
25
|
-
|
26
|
-
There are two operations on ToolSets:
|
27
|
-
|
28
|
-
1. Creating a new ToolSet.
|
29
|
-
2. Accessing the current ToolSet.
|
30
|
-
|
31
|
-
Create a new ToolSet before defining or loading the classes and modules that
|
32
|
-
implement code tools. Access the current ToolSet to build up its various parts
|
33
|
-
as a consistent whole.
|
34
|
-
|
35
|
-
To define a ToolSet in separate pieces, use the following example:
|
36
|
-
|
37
|
-
```ruby
|
38
|
-
# my_code_tools.rb
|
39
|
-
# Entry point to defining MyCodeTools
|
40
|
-
Rubinius::ToolSets.create :my_code_tools
|
41
|
-
|
42
|
-
# my_code_tools/some_tool.rb
|
43
|
-
module Rubinius::ToolSets.current::ToolSet
|
44
|
-
# define a tool
|
45
|
-
end
|
46
|
-
```
|
47
|
-
|
48
|
-
Alternatively, define a ToolSet by requiring files in a block as follows:
|
49
|
-
|
50
|
-
```ruby
|
51
|
-
Rubinius::ToolSets.create :my_code_tools do
|
52
|
-
require "my_code_tools"
|
53
|
-
end
|
54
|
-
```
|
55
|
-
|
56
|
-
The advantage of the latter approach is that multiple ToolSets can be created
|
57
|
-
from some of the same files because `$LOADED_FEATURES` are reset when yielding
|
58
|
-
to the block.
|
59
|
-
|
60
|
-
## Reference
|
61
|
-
|
62
|
-
### Rubinius::ToolSets.create([name [, &block]])
|
63
|
-
|
64
|
-
Creates a new ToolSet.
|
65
|
-
|
66
|
-
If name is not given, the ToolSet is not assigned to a constant under
|
67
|
-
`Rubinius::ToolSets`. If the name is given, it is camelized and set as a
|
68
|
-
constant under Rubinius::ToolSets.
|
69
|
-
|
70
|
-
If a block is passed, `$LOADED_FEATURES` is cleared before yielding to the
|
71
|
-
block and reset afterwards. The ToolSet is yielded to the block.
|
72
|
-
|
73
|
-
Calling `Rubinius::ToolSet.create` a second time creates a new ToolSet.
|
74
|
-
|
75
|
-
### Rubinius::ToolSets.current
|
76
|
-
|
77
|
-
Returns the ToolSet that is being defined. If called before `.create`, a new,
|
78
|
-
anonymous ToolSet is created.
|
79
|
-
|
80
|
-
## Contributing
|
81
|
-
|
82
|
-
1. Fork it
|
83
|
-
2. Create your feature branch (`git checkout -b my-new-feature`)
|
84
|
-
3. Commit your changes (`git commit -am 'Add some feature'`)
|
85
|
-
4. Push to the branch (`git push origin my-new-feature`)
|
86
|
-
5. Create new Pull Request
|
data/Rakefile
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
require "bundler/gem_tasks"
|
data/rubinius-toolset.gemspec
DELETED
@@ -1,30 +0,0 @@
|
|
1
|
-
# coding: utf-8
|
2
|
-
require './lib/rubinius/toolset/version'
|
3
|
-
|
4
|
-
Gem::Specification.new do |spec|
|
5
|
-
spec.name = "rubinius-toolset"
|
6
|
-
spec.version = Rubinius::ToolSets::VERSION
|
7
|
-
spec.authors = ["Brian Shirai"]
|
8
|
-
spec.email = ["brixen@gmail.com"]
|
9
|
-
spec.description = <<-EOD
|
10
|
-
Rubinius::ToolSet provides a registry for code tools. These include
|
11
|
-
the Rubinius bytecode compiler and parser. These, in turn, depend on
|
12
|
-
other components like the AST and bytecode emitter and serializer.
|
13
|
-
|
14
|
-
ToolSets provide a mechanism for other languages to reuse as much of
|
15
|
-
the Rubinius code tools as are suitable for that language.
|
16
|
-
EOD
|
17
|
-
spec.summary = %q{A registry for Rubinius code tools}
|
18
|
-
spec.homepage = "https://github.com/rubinius/rubinius-toolset"
|
19
|
-
spec.license = "BSD"
|
20
|
-
|
21
|
-
spec.files = `git ls-files`.split($/)
|
22
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
23
|
-
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
24
|
-
spec.require_paths = ["lib"]
|
25
|
-
|
26
|
-
spec.add_development_dependency "bundler", "~> 1.3"
|
27
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
28
|
-
spec.add_development_dependency "mspec", "~> 1.5"
|
29
|
-
spec.add_development_dependency "rubinius-bridge", "~> 1.0"
|
30
|
-
end
|
data/spec/spec_helper.rb
DELETED
data/spec/toolset_spec.rb
DELETED
@@ -1,68 +0,0 @@
|
|
1
|
-
describe "Rubinius::ToolSets.create" do
|
2
|
-
before :each do
|
3
|
-
module ::CodeTools
|
4
|
-
ToolSetCodeTools = 1
|
5
|
-
end
|
6
|
-
end
|
7
|
-
|
8
|
-
after :each do
|
9
|
-
::Object.send :remove_const, :CodeTools rescue nil
|
10
|
-
end
|
11
|
-
|
12
|
-
it "creates a new ToolSet" do
|
13
|
-
m = Rubinius::ToolSets.current
|
14
|
-
Rubinius::ToolSets.create.should_not equal(m)
|
15
|
-
end
|
16
|
-
|
17
|
-
it "accepts an optional name for the ToolSet" do
|
18
|
-
ts = Rubinius::ToolSets.create :a_tool_set
|
19
|
-
ts.name.should == "Rubinius::ToolSets::AToolSet"
|
20
|
-
end
|
21
|
-
|
22
|
-
it "sets .current to the ToolSet that is yielded to the block" do
|
23
|
-
Rubinius::ToolSets.create do |ts|
|
24
|
-
ts.should equal(Rubinius::ToolSets.current)
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
it "resets $LOADED_FEATURES while running the block" do
|
29
|
-
Rubinius::ToolSets.create do
|
30
|
-
$LOADED_FEATURES.should == []
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
it "restores the original set of $LOADED_FEATURES after running the block" do
|
35
|
-
$LOADED_FEATURES.should_not be_empty
|
36
|
-
previously_loaded_features = $LOADED_FEATURES.dup
|
37
|
-
Rubinius::ToolSets.create do end
|
38
|
-
$LOADED_FEATURES.should == previously_loaded_features
|
39
|
-
end
|
40
|
-
|
41
|
-
it "sets the 'ToolSet' constant on the yielded ToolSet to refer to itself" do
|
42
|
-
Rubinius::ToolSets.create :spec do |ts|
|
43
|
-
ts.should equal(ts::ToolSet)
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
it "includes the ::CodeTools constant in the current ToolSet" do
|
48
|
-
ts = Rubinius::ToolSets.create(:spec) { |ts| ts }
|
49
|
-
ts.const_defined?(:ToolSetCodeTools).should be_true
|
50
|
-
end
|
51
|
-
|
52
|
-
it "removes the ::CodeTools constant after yielding" do
|
53
|
-
Rubinius::ToolSets.create(:spec) { }
|
54
|
-
Object.const_defined?(:ToolSetCodeTools).should be_false
|
55
|
-
end
|
56
|
-
end
|
57
|
-
|
58
|
-
describe "Rubinius::ToolSets.current" do
|
59
|
-
it "returns the ToolSet created by .create" do
|
60
|
-
ts = Rubinius::ToolSets.create
|
61
|
-
Rubinius::ToolSets.current.should equal(ts)
|
62
|
-
end
|
63
|
-
|
64
|
-
it "returns the same ToolSet on each call" do
|
65
|
-
ts = Rubinius::ToolSets.current
|
66
|
-
ts.should equal(Rubinius::ToolSets.current)
|
67
|
-
end
|
68
|
-
end
|