looksee 3.0.0-universal-java-1.8 → 3.0.1-universal-java-1.8

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: 7b6440efe56457fd037f23768b3affcfade4de70
4
- data.tar.gz: 77514ce0c17aeda4ef96bd91709402ccabf6a406
3
+ metadata.gz: fb6de4a38e30fddb774e1f416178ebe20d83ff2f
4
+ data.tar.gz: ab36c55072e59cc7e7596fe2b2afd0716b6e899d
5
5
  SHA512:
6
- metadata.gz: 929395ec216550b73b552cf6bd7ef619cb8e551b8ab9e9289f06d4c63d8fc408b0970aa42353f1f912ff8b1924c67c0bc89f7fdc651b6f0dbc5c2d4eee3f05be
7
- data.tar.gz: 78f1ab931681c436ad3843f356676f8aad679e3d6eade65bbda9f554413bf9402c37fd6f0a0b3555ceed1e2e1eb51d634756d06c6ef0a022fb424edc7acb5e15
6
+ metadata.gz: 804c6151e41e28312495ff6a46550ed93c43772176ad3bd1ba5c9b8fb85507e3f24ffad0cb7de421bf9245e6b39aeac0e611659c40618eebaad6caa8bbf52409
7
+ data.tar.gz: bbecd51016366719cbbb853aebe036f579f549cc9c4b3b397c4b87369a36d10e5ea88d6d40edcc95e69572b88d53cc1dc86df3a893b1a1e80e579e2d1ddd3c86
data/CHANGELOG CHANGED
@@ -1,3 +1,8 @@
1
+ == 3.0.1 2015-01-24
2
+
3
+ * Fix Looksee.rename. [Jan Lelis]
4
+ * Object.respond_to_missing?(:ls) is now true.
5
+
1
6
  == 3.0.0 2015-01-06
2
7
 
3
8
  * Support for MRI 2.2.0.
Binary file
data/lib/looksee/clean.rb CHANGED
@@ -132,6 +132,23 @@ module Looksee
132
132
  Inspector.new(lookup_path, options)
133
133
  end
134
134
 
135
+ #
136
+ # Rename the #ls method, added to every object. Example:
137
+ #
138
+ # rename :_ls
139
+ #
140
+ # This renames Looksee's #ls method to #_ls.
141
+ #
142
+ # For backward compatibility, the old-style invocation is also
143
+ # supported. Please note this is deprecated.
144
+ #
145
+ # rename :ls => :_ls
146
+ #
147
+ def rename(name)
148
+ name = name[:ls] if name.is_a?(Hash)
149
+ ObjectMixin.inspection_method = name
150
+ end
151
+
135
152
  #
136
153
  # Show a quick reference.
137
154
  #
@@ -7,42 +7,22 @@ module Looksee
7
7
  # relies on Object#ls not existing.
8
8
  #
9
9
  def method_missing(name, *args)
10
- if name == :ls
10
+ if name == Looksee::ObjectMixin.inspection_method
11
11
  Looksee[self, *args]
12
12
  else
13
13
  super
14
14
  end
15
15
  end
16
16
 
17
- def respond_to?(name, include_private=false)
18
- super || name == :ls
17
+ def respond_to_missing?(name, include_private=false)
18
+ name == Looksee::ObjectMixin.inspection_method || super
19
19
  end
20
20
 
21
- def self.rename(name) # :nodoc:
22
- name = name[:ls] if name.is_a?(Hash)
23
- alias_method name, :ls
24
- remove_method :ls
21
+ class << self
22
+ attr_accessor :inspection_method
25
23
  end
24
+ self.inspection_method = ENV['LOOKSEE_METHOD'] || :ls
26
25
  end
27
26
 
28
- #
29
- # Rename the #ls method, added to every object. Example:
30
- #
31
- # rename :_ls
32
- #
33
- # This renames Looksee's #ls method to #_ls.
34
- #
35
- # For backward compatibility, the old-style invocation is also
36
- # supported. Please note this is deprecated.
37
- #
38
- # rename :ls => :_ls
39
- #
40
- def self.rename(name)
41
- ObjectMixin.rename(name)
42
- end
43
-
44
- name = ENV['LOOKSEE_METHOD'] and
45
- rename name
46
-
47
27
  Object.send :include, ObjectMixin
48
28
  end
@@ -1,5 +1,5 @@
1
1
  module Looksee
2
- VERSION = [3, 0, 0]
2
+ VERSION = [3, 0, 1]
3
3
 
4
4
  class << VERSION
5
5
  include Comparable
@@ -1,17 +1,43 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Looksee::ObjectMixin do
4
- describe "#ls" do
5
- before do
6
- @object = Object.new
7
- Looksee.stub(:default_specifiers).and_return([])
8
- end
4
+ before do
5
+ @object = Object.new
6
+ Looksee.stub(:default_specifiers).and_return([])
7
+ end
9
8
 
9
+ describe "#ls" do
10
10
  it "should return an Inspector for the object's lookup path using the given arguments" do
11
11
  result = @object.ls(:private)
12
12
  result.should be_a(Looksee::Inspector)
13
13
  result.lookup_path.object.should.equal?(@object)
14
14
  result.visibilities.should == Set[:private]
15
15
  end
16
+
17
+ context "when #ls is renamed" do
18
+ before { Looksee.rename(:ls2) }
19
+ after { Looksee.rename(:ls) }
20
+
21
+ it "should honor the new name" do
22
+ @object.ls2.should be_a(Looksee::Inspector)
23
+ expect { @object.ls }.to raise_error(NoMethodError)
24
+ end
25
+ end
26
+ end
27
+
28
+ describe "#respond_to_missing?" do
29
+ it "should be true for :ls" do
30
+ @object.__send__(:respond_to_missing?, :ls).should == true
31
+ end
32
+
33
+ context "when #ls renamed" do
34
+ before { Looksee.rename(:ls2) }
35
+ after { Looksee.rename(:ls) }
36
+
37
+ it "should honor the new name" do
38
+ @object.__send__(:respond_to_missing?, :ls2).should == true
39
+ @object.__send__(:respond_to_missing?, :ls).should == false
40
+ end
41
+ end
16
42
  end
17
43
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: looksee
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 3.0.1
5
5
  platform: universal-java-1.8
6
6
  authors:
7
7
  - George Ogata
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-06 00:00:00.000000000 Z
11
+ date: 2015-01-24 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description:
14
14
  email:
@@ -20,25 +20,11 @@ extra_rdoc_files:
20
20
  - LICENSE
21
21
  - README.markdown
22
22
  files:
23
- - lib/looksee.rb
24
- - lib/looksee/adapter.rb
25
- - lib/looksee/clean.rb
26
- - lib/looksee/columnizer.rb
27
- - lib/looksee/core_ext.rb
28
- - lib/looksee/editor.rb
29
- - lib/looksee/help.rb
30
- - lib/looksee/inspector.rb
31
- - lib/looksee/JRuby.jar
32
- - lib/looksee/lookup_path.rb
33
- - lib/looksee/rbx.bundle
34
- - lib/looksee/version.rb
35
- - lib/looksee/adapter/base.rb
36
- - lib/looksee/adapter/rubinius.rb
37
- - ext/mri/mri.c
38
- - ext/rbx/rbx.c
39
- - ext/mri/env-1.8.h
40
- - ext/mri/eval_c-1.8.h
41
- - ext/mri/node-1.9.h
23
+ - CHANGELOG
24
+ - LICENSE
25
+ - README.markdown
26
+ - Rakefile
27
+ - ext/extconf.rb
42
28
  - ext/mri/1.9.2/debug.h
43
29
  - ext/mri/1.9.2/id.h
44
30
  - ext/mri/1.9.2/method.h
@@ -62,12 +48,25 @@ files:
62
48
  - ext/mri/2.1.0/method.h
63
49
  - ext/mri/2.2.0/internal.h
64
50
  - ext/mri/2.2.0/method.h
65
- - ext/extconf.rb
66
- - CHANGELOG
67
- - LICENSE
68
- - Rakefile
69
- - README.markdown
70
- - spec/spec_helper.rb
51
+ - ext/mri/env-1.8.h
52
+ - ext/mri/eval_c-1.8.h
53
+ - ext/mri/mri.c
54
+ - ext/mri/node-1.9.h
55
+ - ext/rbx/rbx.c
56
+ - lib/looksee.rb
57
+ - lib/looksee/JRuby.jar
58
+ - lib/looksee/adapter.rb
59
+ - lib/looksee/adapter/base.rb
60
+ - lib/looksee/adapter/rubinius.rb
61
+ - lib/looksee/clean.rb
62
+ - lib/looksee/columnizer.rb
63
+ - lib/looksee/core_ext.rb
64
+ - lib/looksee/editor.rb
65
+ - lib/looksee/help.rb
66
+ - lib/looksee/inspector.rb
67
+ - lib/looksee/lookup_path.rb
68
+ - lib/looksee/rbx.bundle
69
+ - lib/looksee/version.rb
71
70
  - spec/looksee/adapter_spec.rb
72
71
  - spec/looksee/clean_spec.rb
73
72
  - spec/looksee/columnizer_spec.rb
@@ -75,6 +74,7 @@ files:
75
74
  - spec/looksee/editor_spec.rb
76
75
  - spec/looksee/inspector_spec.rb
77
76
  - spec/looksee/lookup_path_spec.rb
77
+ - spec/spec_helper.rb
78
78
  - spec/support/core_ext.rb
79
79
  - spec/support/temporary_classes.rb
80
80
  - spec/support/test_adapter.rb
@@ -98,7 +98,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
98
98
  version: '0'
99
99
  requirements: []
100
100
  rubyforge_project:
101
- rubygems_version: 2.1.9
101
+ rubygems_version: 2.4.5
102
102
  signing_key:
103
103
  specification_version: 3
104
104
  summary: Supercharged method introspection in IRB.