peelr 0.0.1a → 0.0.1
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.
- data/README.md +22 -2
- data/lib/peelr.rb +16 -19
- data/lib/peelr/version.rb +1 -1
- metadata +60 -47
- checksums.yaml +0 -7
- data/.gitignore20130707-25504-zikoyu +0 -17
data/README.md
CHANGED
@@ -14,11 +14,31 @@ And then execute:
|
|
14
14
|
|
15
15
|
Or install it yourself as:
|
16
16
|
|
17
|
-
$ gem install peelr
|
17
|
+
$ gem install peelr --pre
|
18
18
|
|
19
19
|
## Usage
|
20
20
|
|
21
|
-
|
21
|
+
```ruby
|
22
|
+
class User
|
23
|
+
def survive
|
24
|
+
peelr!
|
25
|
+
#...
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
class Car
|
30
|
+
attr_reader :user
|
31
|
+
def initialize(user)
|
32
|
+
@user = user
|
33
|
+
end
|
34
|
+
|
35
|
+
def crash
|
36
|
+
user.survive
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
Car.new(User.new).crash #=> ### 'survive' called inside 'crash' (example_file.rb:13)
|
41
|
+
```
|
22
42
|
|
23
43
|
## Contributing
|
24
44
|
|
data/lib/peelr.rb
CHANGED
@@ -1,31 +1,28 @@
|
|
1
1
|
require "peelr/version"
|
2
|
-
|
3
2
|
module Kernel
|
4
|
-
def peelr!
|
5
|
-
if Kernel.respond_to?(:caller_locations)
|
6
|
-
|
7
|
-
caller_parent = caller_locations(2,1)[0]
|
8
|
-
catch(:no_parent) do
|
9
|
-
throw(:no_parent) unless caller_parent
|
10
|
-
|
11
|
-
puts "### '#{caller_method.label}' called inside '#{caller_parent.label}' (#{caller_parent.path}:#{caller_parent.lineno})"
|
12
|
-
end
|
3
|
+
def peelr!
|
4
|
+
caller_method, caller_parent = if Kernel.respond_to?(:caller_locations)
|
5
|
+
[caller_locations(1,1)[0], caller_locations(2,1)[0]]
|
13
6
|
else
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
7
|
+
[caller[0], caller[1]]
|
8
|
+
end
|
9
|
+
|
10
|
+
catch(:no_parent) do
|
11
|
+
throw(:no_parent) unless caller_parent
|
12
|
+
|
13
|
+
if Kernel.respond_to?(:caller_locations)
|
14
|
+
puts "### '#{caller_method.label}' called inside '#{caller_parent.label}' (#{caller_parent.path}:#{caller_parent.lineno})"
|
15
|
+
else
|
18
16
|
caller_method_parts = caller_method.split(":")
|
19
17
|
caller_method_name = caller_method_parts[2].scan(/\w+/).last
|
20
18
|
|
21
19
|
caller_parent_parts = caller_parent.split(":")
|
22
20
|
caller_parent_file = caller_parent_parts[0]
|
23
21
|
caller_parent_line = caller_parent_parts[1]
|
24
|
-
caller_parent_name = caller_parent_parts[2].scan(/\w+/).last
|
22
|
+
caller_parent_name = (label=caller_parent_parts[2]) ? label.scan(/\w+/).last : "<main>"
|
25
23
|
|
26
24
|
puts "### '#{caller_method_name}' called inside '#{caller_parent_name}' (#{caller_parent_file}:#{caller_parent_line})"
|
27
|
-
end
|
28
|
-
end
|
25
|
+
end
|
26
|
+
end
|
29
27
|
end
|
30
|
-
end
|
31
|
-
|
28
|
+
end
|
data/lib/peelr/version.rb
CHANGED
metadata
CHANGED
@@ -1,52 +1,58 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: peelr
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 0
|
8
|
+
- 1
|
9
|
+
version: 0.0.1
|
5
10
|
platform: ruby
|
6
|
-
authors:
|
11
|
+
authors:
|
7
12
|
- Dragos Miron
|
8
13
|
autorequire:
|
9
14
|
bindir: bin
|
10
15
|
cert_chain: []
|
11
|
-
|
12
|
-
|
13
|
-
|
16
|
+
|
17
|
+
date: 2013-07-09 00:00:00 +01:00
|
18
|
+
default_executable:
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
14
21
|
name: bundler
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ~>
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '1.3'
|
20
|
-
type: :development
|
21
22
|
prerelease: false
|
22
|
-
|
23
|
-
requirements:
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
24
25
|
- - ~>
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
|
27
|
-
-
|
28
|
-
|
29
|
-
|
30
|
-
requirements:
|
31
|
-
- - '>='
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
segments:
|
28
|
+
- 1
|
29
|
+
- 3
|
30
|
+
version: "1.3"
|
34
31
|
type: :development
|
32
|
+
version_requirements: *id001
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: rake
|
35
35
|
prerelease: false
|
36
|
-
|
37
|
-
requirements:
|
38
|
-
- -
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
|
36
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
segments:
|
41
|
+
- 0
|
42
|
+
version: "0"
|
43
|
+
type: :development
|
44
|
+
version_requirements: *id002
|
41
45
|
description: See who is calling your method
|
42
|
-
email:
|
46
|
+
email:
|
43
47
|
- dragosmr+github@gmail.com
|
44
48
|
executables: []
|
49
|
+
|
45
50
|
extensions: []
|
51
|
+
|
46
52
|
extra_rdoc_files: []
|
47
|
-
|
53
|
+
|
54
|
+
files:
|
48
55
|
- .gitignore
|
49
|
-
- .gitignore20130707-25504-zikoyu
|
50
56
|
- Gemfile
|
51
57
|
- LICENSE.txt
|
52
58
|
- README.md
|
@@ -54,28 +60,35 @@ files:
|
|
54
60
|
- lib/peelr.rb
|
55
61
|
- lib/peelr/version.rb
|
56
62
|
- peelr.gemspec
|
63
|
+
has_rdoc: true
|
57
64
|
homepage:
|
58
|
-
licenses:
|
65
|
+
licenses:
|
59
66
|
- MIT
|
60
|
-
metadata: {}
|
61
67
|
post_install_message:
|
62
68
|
rdoc_options: []
|
63
|
-
|
69
|
+
|
70
|
+
require_paths:
|
64
71
|
- lib
|
65
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
66
|
-
requirements:
|
67
|
-
- -
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
72
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - ">="
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
segments:
|
77
|
+
- 0
|
78
|
+
version: "0"
|
79
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - ">="
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
segments:
|
84
|
+
- 0
|
85
|
+
version: "0"
|
75
86
|
requirements: []
|
87
|
+
|
76
88
|
rubyforge_project:
|
77
|
-
rubygems_version:
|
89
|
+
rubygems_version: 1.3.6
|
78
90
|
signing_key:
|
79
|
-
specification_version:
|
91
|
+
specification_version: 3
|
80
92
|
summary: peelr gives you means to tell from where a given method is called
|
81
93
|
test_files: []
|
94
|
+
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: 346bb5ecab1fb1999dd006f24354169021265617
|
4
|
-
data.tar.gz: c938c1a646069d979591e24df4875792864bbe74
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: 66535302bb4f7e75e721bed29778efd8e8939b07cda4b460c9e2dd1a6e961a0a05775769ea6e75eaf1533ee70bce67550ef471270775a29b7e601383f38718eb
|
7
|
-
data.tar.gz: fbc08d9823f394b748ca36d8d1d1282364c55878b9f699bae65acfd2096f31d6b8d9bf107cecc0f53c02a21b204a0e93a0ce78425d3c77817e531df740bbf031
|