looksee 3.0.0-universal-java-1.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG +66 -0
  3. data/LICENSE +22 -0
  4. data/README.markdown +175 -0
  5. data/Rakefile +13 -0
  6. data/ext/extconf.rb +19 -0
  7. data/ext/mri/1.9.2/debug.h +36 -0
  8. data/ext/mri/1.9.2/id.h +170 -0
  9. data/ext/mri/1.9.2/method.h +103 -0
  10. data/ext/mri/1.9.2/node.h +483 -0
  11. data/ext/mri/1.9.2/thread_pthread.h +27 -0
  12. data/ext/mri/1.9.2/vm_core.h +707 -0
  13. data/ext/mri/1.9.2/vm_opts.h +51 -0
  14. data/ext/mri/1.9.3/atomic.h +56 -0
  15. data/ext/mri/1.9.3/debug.h +41 -0
  16. data/ext/mri/1.9.3/id.h +175 -0
  17. data/ext/mri/1.9.3/internal.h +227 -0
  18. data/ext/mri/1.9.3/internal_falcon.h +248 -0
  19. data/ext/mri/1.9.3/method.h +105 -0
  20. data/ext/mri/1.9.3/node.h +503 -0
  21. data/ext/mri/1.9.3/thread_pthread.h +51 -0
  22. data/ext/mri/1.9.3/vm_core.h +755 -0
  23. data/ext/mri/1.9.3/vm_opts.h +51 -0
  24. data/ext/mri/2.0.0/internal.h +378 -0
  25. data/ext/mri/2.0.0/method.h +138 -0
  26. data/ext/mri/2.1.0/internal.h +889 -0
  27. data/ext/mri/2.1.0/method.h +142 -0
  28. data/ext/mri/2.2.0/internal.h +1182 -0
  29. data/ext/mri/2.2.0/method.h +141 -0
  30. data/ext/mri/env-1.8.h +27 -0
  31. data/ext/mri/eval_c-1.8.h +27 -0
  32. data/ext/mri/mri.c +309 -0
  33. data/ext/mri/node-1.9.h +35 -0
  34. data/ext/rbx/rbx.c +13 -0
  35. data/lib/looksee.rb +2 -0
  36. data/lib/looksee/JRuby.jar +0 -0
  37. data/lib/looksee/adapter.rb +8 -0
  38. data/lib/looksee/adapter/base.rb +105 -0
  39. data/lib/looksee/adapter/rubinius.rb +84 -0
  40. data/lib/looksee/clean.rb +169 -0
  41. data/lib/looksee/columnizer.rb +73 -0
  42. data/lib/looksee/core_ext.rb +48 -0
  43. data/lib/looksee/editor.rb +64 -0
  44. data/lib/looksee/help.rb +54 -0
  45. data/lib/looksee/inspector.rb +70 -0
  46. data/lib/looksee/lookup_path.rb +95 -0
  47. data/lib/looksee/rbx.bundle +0 -0
  48. data/lib/looksee/version.rb +11 -0
  49. data/spec/looksee/adapter_spec.rb +588 -0
  50. data/spec/looksee/clean_spec.rb +41 -0
  51. data/spec/looksee/columnizer_spec.rb +52 -0
  52. data/spec/looksee/core_ext_spec.rb +17 -0
  53. data/spec/looksee/editor_spec.rb +107 -0
  54. data/spec/looksee/inspector_spec.rb +179 -0
  55. data/spec/looksee/lookup_path_spec.rb +87 -0
  56. data/spec/spec_helper.rb +29 -0
  57. data/spec/support/core_ext.rb +25 -0
  58. data/spec/support/temporary_classes.rb +78 -0
  59. data/spec/support/test_adapter.rb +83 -0
  60. metadata +116 -0
@@ -0,0 +1,29 @@
1
+ $:.unshift File.expand_path('..', File.dirname(__FILE__))
2
+ ENV['LOOKSEE_METHOD'] = nil
3
+
4
+ require 'rspec'
5
+ require 'looksee'
6
+
7
+ require 'rbconfig'
8
+ require 'set'
9
+ require 'fileutils'
10
+
11
+ ROOT = File.expand_path('..', File.dirname(__FILE__))
12
+
13
+ Dir['spec/support/*.rb'].each do |path|
14
+ require path
15
+ end
16
+
17
+ NATIVE_ADAPTER = Looksee.adapter
18
+
19
+ RSpec.configure do |config|
20
+ config.extend TestAdapter::Mixin
21
+
22
+ config.expect_with :rspec do |c|
23
+ c.syntax = [:should, :expect]
24
+ end
25
+
26
+ config.mock_with :rspec do |c|
27
+ c.syntax = [:should, :expect]
28
+ end
29
+ end
@@ -0,0 +1,25 @@
1
+ class Object
2
+ #
3
+ # Return this object's singleton class.
4
+ #
5
+ def singleton_class
6
+ class << self; self; end
7
+ end
8
+
9
+ #
10
+ # Return true if the given object include?-s this object.
11
+ #
12
+ def in?(object)
13
+ object.include?(self)
14
+ end
15
+ end
16
+
17
+ class String
18
+ #
19
+ # Remove a left margin delimited by '|'-characters. Useful for
20
+ # heredocs:
21
+ #
22
+ def demargin
23
+ gsub(/^ *\|/, '')
24
+ end
25
+ end
@@ -0,0 +1,78 @@
1
+ #
2
+ # Include these in example groups to add facilities to create
3
+ # temporary classes and modules, which are swept up at the end of each
4
+ # example.
5
+ #
6
+ # Call make_class('ClassName') or make_module('ModuleName') to create
7
+ # a temporary class, then access them with plain constants (ClassName,
8
+ # ModuleName).
9
+ #
10
+ module TemporaryClasses
11
+ def self.included(mod)
12
+ mod.before do
13
+ @temporary_modules = []
14
+ end
15
+
16
+ mod.after do
17
+ @temporary_modules.each do |mod|
18
+ Object.send :remove_const, mod.name
19
+ end
20
+ end
21
+ end
22
+
23
+ #
24
+ # Create a temporary class with the given name and superclass.
25
+ #
26
+ def temporary_class(name, options={}, &block)
27
+ klass = Class.new(options[:superclass] || Object)
28
+ Object.const_set(name, klass)
29
+ klass.class_eval(&block) if block
30
+ @temporary_modules << klass
31
+ klass
32
+ end
33
+
34
+ #
35
+ # Create a temporary module with the given name.
36
+ #
37
+ def temporary_module(name, &block)
38
+ mod = Module.new
39
+ Object.const_set(name, mod)
40
+ mod.class_eval(&block) if block
41
+ @temporary_modules << mod
42
+ mod
43
+ end
44
+
45
+ #
46
+ # Replace the methods of the given module with those named.
47
+ #
48
+ # +methods+ is a hash of visibilities to names.
49
+ #
50
+ # As Ruby's reflection on singleton classes of classes isn't quite
51
+ # adequate, you need to provide a :class_singleton option when such
52
+ # a class is given.
53
+ #
54
+ # e.g.:
55
+ #
56
+ # replace_methods MyClass, :public => [:a, :b]
57
+ #
58
+ def add_methods(mod, options={})
59
+ mod.module_eval do
60
+ [:public, :protected, :private].each do |visibility|
61
+ Array(options[visibility]).each do |name|
62
+ define_method(name){}
63
+ send visibility, name
64
+ end
65
+ end
66
+ end
67
+ end
68
+
69
+ private # ---------------------------------------------------------
70
+
71
+ def all_instance_methods(mod)
72
+ names =
73
+ mod.public_instance_methods(false) +
74
+ mod.protected_instance_methods(false) +
75
+ mod.private_instance_methods(false)
76
+ names.map{|name| name.to_sym} # they're strings in ruby <1.9
77
+ end
78
+ end
@@ -0,0 +1,83 @@
1
+ class TestAdapter < Looksee::Adapter::Base
2
+ module Mixin
3
+ def use_test_adapter
4
+ before { Looksee.adapter = TestAdapter.new }
5
+ after { Looksee.adapter = NATIVE_ADAPTER }
6
+ end
7
+ end
8
+
9
+ def lookup_modules(object)
10
+ ancestors[object]
11
+ end
12
+
13
+ def internal_public_instance_methods(mod)
14
+ public_methods[mod]
15
+ end
16
+
17
+ def internal_protected_instance_methods(mod)
18
+ protected_methods[mod]
19
+ end
20
+
21
+ def internal_private_instance_methods(mod)
22
+ private_methods[mod]
23
+ end
24
+
25
+ def internal_undefined_instance_methods(mod)
26
+ undefined_methods[mod]
27
+ end
28
+
29
+ def included_class?(object)
30
+ NATIVE_ADAPTER.included_class?(object)
31
+ end
32
+
33
+ def singleton_class?(object)
34
+ NATIVE_ADAPTER.singleton_class?(object)
35
+ end
36
+
37
+ def singleton_instance(object)
38
+ NATIVE_ADAPTER.singleton_instance(object)
39
+ end
40
+
41
+ def module_name(object)
42
+ NATIVE_ADAPTER.module_name(object)
43
+ end
44
+
45
+ def set_methods(mod, public, protected, private, undefined)
46
+ self.public_methods[mod] = public
47
+ self.protected_methods[mod] = protected
48
+ self.private_methods[mod] = private
49
+ self.undefined_methods[mod] = undefined
50
+ end
51
+
52
+ def source_location(method)
53
+ source_locations[[method.owner.name.to_s, method.name.to_s]]
54
+ end
55
+
56
+ def set_source_location(mod, method, location)
57
+ source_locations[[mod.name.to_s, method.to_s]] = location
58
+ end
59
+
60
+ def ancestors
61
+ @ancestors ||= Hash.new { |h, k| h[k] = [] }
62
+ end
63
+
64
+ def public_methods
65
+ @public_methods ||= Hash.new { |h, k| h[k] = [] }
66
+ end
67
+
68
+ def protected_methods
69
+ @protected_methods ||= Hash.new { |h, k| h[k] = [] }
70
+ end
71
+
72
+ def private_methods
73
+ @private_methods ||= Hash.new { |h, k| h[k] = [] }
74
+ end
75
+
76
+ def undefined_methods
77
+ @undefined_methods ||= Hash.new { |h, k| h[k] = [] }
78
+ end
79
+
80
+ def source_locations
81
+ @source_locations ||= {}
82
+ end
83
+ end
metadata ADDED
@@ -0,0 +1,116 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: looksee
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.0.0
5
+ platform: universal-java-1.8
6
+ authors:
7
+ - George Ogata
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-01-06 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description:
14
+ email:
15
+ - george.ogata@gmail.com
16
+ executables: []
17
+ extensions: []
18
+ extra_rdoc_files:
19
+ - CHANGELOG
20
+ - LICENSE
21
+ - README.markdown
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
42
+ - ext/mri/1.9.2/debug.h
43
+ - ext/mri/1.9.2/id.h
44
+ - ext/mri/1.9.2/method.h
45
+ - ext/mri/1.9.2/node.h
46
+ - ext/mri/1.9.2/thread_pthread.h
47
+ - ext/mri/1.9.2/vm_core.h
48
+ - ext/mri/1.9.2/vm_opts.h
49
+ - ext/mri/1.9.3/atomic.h
50
+ - ext/mri/1.9.3/debug.h
51
+ - ext/mri/1.9.3/id.h
52
+ - ext/mri/1.9.3/internal.h
53
+ - ext/mri/1.9.3/internal_falcon.h
54
+ - ext/mri/1.9.3/method.h
55
+ - ext/mri/1.9.3/node.h
56
+ - ext/mri/1.9.3/thread_pthread.h
57
+ - ext/mri/1.9.3/vm_core.h
58
+ - ext/mri/1.9.3/vm_opts.h
59
+ - ext/mri/2.0.0/internal.h
60
+ - ext/mri/2.0.0/method.h
61
+ - ext/mri/2.1.0/internal.h
62
+ - ext/mri/2.1.0/method.h
63
+ - ext/mri/2.2.0/internal.h
64
+ - 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
71
+ - spec/looksee/adapter_spec.rb
72
+ - spec/looksee/clean_spec.rb
73
+ - spec/looksee/columnizer_spec.rb
74
+ - spec/looksee/core_ext_spec.rb
75
+ - spec/looksee/editor_spec.rb
76
+ - spec/looksee/inspector_spec.rb
77
+ - spec/looksee/lookup_path_spec.rb
78
+ - spec/support/core_ext.rb
79
+ - spec/support/temporary_classes.rb
80
+ - spec/support/test_adapter.rb
81
+ homepage: http://github.com/oggy/looksee
82
+ licenses:
83
+ - MIT
84
+ metadata: {}
85
+ post_install_message:
86
+ rdoc_options: []
87
+ require_paths:
88
+ - lib
89
+ required_ruby_version: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ required_rubygems_version: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
99
+ requirements: []
100
+ rubyforge_project:
101
+ rubygems_version: 2.1.9
102
+ signing_key:
103
+ specification_version: 3
104
+ summary: Supercharged method introspection in IRB.
105
+ test_files:
106
+ - spec/spec_helper.rb
107
+ - spec/looksee/adapter_spec.rb
108
+ - spec/looksee/clean_spec.rb
109
+ - spec/looksee/columnizer_spec.rb
110
+ - spec/looksee/core_ext_spec.rb
111
+ - spec/looksee/editor_spec.rb
112
+ - spec/looksee/inspector_spec.rb
113
+ - spec/looksee/lookup_path_spec.rb
114
+ - spec/support/core_ext.rb
115
+ - spec/support/temporary_classes.rb
116
+ - spec/support/test_adapter.rb