const_lookup 0.5.1 → 0.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 98df710f86e4e9651585c81360b46e2ec1510a07
4
- data.tar.gz: 9042044d08f74d2721dd33d52c1412b0c64b7d22
3
+ metadata.gz: 00f584f779fd52eb4d0b29bfceee63311c0b2df4
4
+ data.tar.gz: 3e8dd654175a679817db4daabdc50abb9bfe6283
5
5
  SHA512:
6
- metadata.gz: 09752c925c80469b934bce132da5b82c1cdeccd788147a5c0f0443093005e9fc934bcf0bc14d06ab46b953e73bb9d496f8edffeeaa8ce06cba2e6d58167640c3
7
- data.tar.gz: cf729d5332dc4a39daad47375db6779eb95ea688cc216c5f781f70f5903ca8c2b6bbd645a2d5d21125672de85fa495d59fbe4e4e1366fdbaca9a7ec7a334f495
6
+ metadata.gz: c8a99b581407f0d535048951f59981ef7f3ae690e45c59cb40ee0e8d366dbc265f52c27574abad2adfbe096fbae5a9436af2aa210825dd5362b1a11a44b8b75d
7
+ data.tar.gz: caca22c07ccd4efb161bb6347b4d8dc0485cae11b805f6202a804f1787cfb0bb13619b54d08cb303b6db0cf258b4d00175a6b3f74074d7fbfb3bf4fd725d1229
@@ -1,3 +1,5 @@
1
1
  language: ruby
2
2
  rvm:
3
+ - 1.9.3
3
4
  - 2.0.0
5
+ - rbx-2.1.1
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # ConstLookup
2
2
 
3
- [![Build Status](https://secure.travis-ci.org/amarshall/const_lookup.png?branch=master)](http://travis-ci.org/amarshall/const_lookup)
3
+ [![Build Status](https://secure.travis-ci.org/amarshall/const_lookup.png?branch=master)](https://travis-ci.org/amarshall/const_lookup)
4
4
  [![Code Climate rating](https://codeclimate.com/github/amarshall/const_lookup.png)](https://codeclimate.com/github/amarshall/const_lookup)
5
5
  [![Gem Version](https://badge.fury.io/rb/const_lookup.png)](https://rubygems.org/gems/const_lookup)
6
6
 
@@ -8,7 +8,7 @@ Makes resolving a constant in a given namespace easy.
8
8
 
9
9
  ## Installation
10
10
 
11
- Install as usual: `gem install const_lookup` or add `gem 'const_lookup'` to your Gemfile. Note that Ruby 2.0 is required.
11
+ Install as usual: `gem install const_lookup` or add `gem 'const_lookup'` to your Gemfile. See `.travis.yml` for supported (tested) Ruby versions.
12
12
 
13
13
  ## Usage
14
14
 
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ['lib']
20
20
 
21
- spec.required_ruby_version = '>= 2.0.0'
21
+ spec.required_ruby_version = '>= 1.9.3'
22
22
 
23
23
  spec.add_development_dependency 'bundler', '~> 1.3'
24
24
  spec.add_development_dependency 'rake'
@@ -27,8 +27,16 @@ class ConstLookup
27
27
  lookup_path << [*lookup_path.last, part]
28
28
  end.map do |parts|
29
29
  parts.join '::'
30
- end.map do |constant_name|
31
- Object.const_get constant_name
30
+ end.map do |name|
31
+ namespaced_const_get name
32
32
  end.reverse
33
33
  end
34
+
35
+ private
36
+
37
+ def namespaced_const_get name
38
+ name.split('::').reduce(Object) do |constant, part|
39
+ constant.const_get part
40
+ end
41
+ end
34
42
  end
@@ -1,3 +1,3 @@
1
1
  class ConstLookup
2
- VERSION = '0.5.1'
2
+ VERSION = '0.6.0'.freeze
3
3
  end
@@ -60,9 +60,9 @@ describe "README examples" do
60
60
 
61
61
  it "works" do
62
62
  expect(A::C.const_get('A')).to eq A
63
- expect{A::C.const_get('B')}.to raise_error NameError, %q(uninitialized constant A::C::B)
63
+ expect{A::C.const_get('B')}.to raise_error NameError, %r(uninitialized constant:? A::C::B)
64
64
  expect(A::C.const_get('D')).to eq D
65
- expect{A::C.const_get('E')}.to raise_error NameError, %q(uninitialized constant A::C::E)
65
+ expect{A::C.const_get('E')}.to raise_error NameError, %r(uninitialized constant:? A::C::E)
66
66
  end
67
67
  end
68
68
  end
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: const_lookup
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Marshall
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-08-28 00:00:00.000000000 Z
11
+ date: 2013-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
- requirement: !ruby/object:Gem::Requirement
15
+ version_requirements: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.3'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
20
+ requirement: !ruby/object:Gem::Requirement
23
21
  requirements:
24
22
  - - ~>
25
23
  - !ruby/object:Gem::Version
26
24
  version: '1.3'
25
+ prerelease: false
26
+ type: :development
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
- requirement: !ruby/object:Gem::Requirement
29
+ version_requirements: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '>='
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
34
+ requirement: !ruby/object:Gem::Requirement
37
35
  requirements:
38
36
  - - '>='
39
37
  - !ruby/object:Gem::Version
40
38
  version: '0'
39
+ prerelease: false
40
+ type: :development
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
- requirement: !ruby/object:Gem::Requirement
43
+ version_requirements: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - '>='
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
51
49
  requirements:
52
50
  - - '>='
53
51
  - !ruby/object:Gem::Version
54
52
  version: '0'
53
+ prerelease: false
54
+ type: :development
55
55
  description: Makes resolving a constant in a given namespace easy.
56
56
  email:
57
57
  - andrew@johnandrewmarshall.com
@@ -76,7 +76,7 @@ homepage: http://johnandrewmarshall.com/projects/const_lookup
76
76
  licenses:
77
77
  - MIT
78
78
  metadata: {}
79
- post_install_message:
79
+ post_install_message:
80
80
  rdoc_options: []
81
81
  require_paths:
82
82
  - lib
@@ -84,20 +84,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
84
84
  requirements:
85
85
  - - '>='
86
86
  - !ruby/object:Gem::Version
87
- version: 2.0.0
87
+ version: 1.9.3
88
88
  required_rubygems_version: !ruby/object:Gem::Requirement
89
89
  requirements:
90
90
  - - '>='
91
91
  - !ruby/object:Gem::Version
92
92
  version: '0'
93
93
  requirements: []
94
- rubyforge_project:
95
- rubygems_version: 2.0.5
96
- signing_key:
94
+ rubyforge_project:
95
+ rubygems_version: 2.1.5
96
+ signing_key:
97
97
  specification_version: 4
98
98
  summary: Makes resolving a constant in a given namespace easy.
99
99
  test_files:
100
100
  - spec/const_lookup/core_ext_spec.rb
101
101
  - spec/const_lookup_spec.rb
102
102
  - spec/readme_spec.rb
103
- has_rdoc: