trace_tree 0.3.4 → 0.3.5
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
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: bd2acac6d571e0747380b7a119f10ceae8b047677da86922aacf86d61f230e1e
|
|
4
|
+
data.tar.gz: 9f99a54c748d8e36b92e11dba833e7059da16ee5fa486412e5c70c35c2186ffc
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7597b9d86bf09817082dbdec9dd31a7a18f80afda328b437d7b7d023ff8e77983e09399e53e2d7f6e8026f13100aac29a48feecfd98ad1fc1319389ffeda7eb9
|
|
7
|
+
data.tar.gz: a69bef456553b83d05d749973c8e923080708bd27a3793b2639b13869f44932fbb85589a52c0695790ff9661043c7bfa55de9db0cc211521cebef7a7fbf6804a
|
|
@@ -3,7 +3,7 @@ class TraceTree
|
|
|
3
3
|
class CcallKernelExtend < Point
|
|
4
4
|
def parameters
|
|
5
5
|
first_callee = callees[0]
|
|
6
|
-
first_callee.respond_to?(:mixin) ? first_callee.mixin : first_callee.
|
|
6
|
+
first_callee.respond_to?(:mixin) ? first_callee.mixin : first_callee.class_name
|
|
7
7
|
end
|
|
8
8
|
|
|
9
9
|
def self.event_class_method
|
|
@@ -9,7 +9,7 @@ class TraceTree
|
|
|
9
9
|
# first callee should be append_features(), check if it is native or custom
|
|
10
10
|
def parameters
|
|
11
11
|
first_callee = callees[0]
|
|
12
|
-
Module == first_callee.class_name ? first_callee.return_value : first_callee.
|
|
12
|
+
Module == first_callee.class_name ? first_callee.return_value : first_callee.class_name
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
end
|
|
@@ -8,7 +8,7 @@ class TraceTree
|
|
|
8
8
|
|
|
9
9
|
def parameters
|
|
10
10
|
first_callee = callees[0]
|
|
11
|
-
Module == first_callee.class_name ? first_callee.return_value : first_callee.
|
|
11
|
+
Module == first_callee.class_name ? first_callee.return_value : first_callee.class_name
|
|
12
12
|
end
|
|
13
13
|
|
|
14
14
|
end
|
data/lib/trace_tree/point.rb
CHANGED
|
@@ -7,7 +7,8 @@ class TraceTree
|
|
|
7
7
|
include TreeGraphable
|
|
8
8
|
include TreeHtmlable
|
|
9
9
|
|
|
10
|
-
attr_reader :
|
|
10
|
+
attr_reader :thread, :frame_env
|
|
11
|
+
attr_reader :call_symbol, :class_name
|
|
11
12
|
attr_accessor :terminal, :config
|
|
12
13
|
|
|
13
14
|
Interfaces = [:event, :defined_class, :method_id, :path, :lineno]
|
|
@@ -73,24 +74,31 @@ EOM
|
|
|
73
74
|
|
|
74
75
|
@return_value = trace_point.return_value if x_return?
|
|
75
76
|
@thread = Thread.current
|
|
77
|
+
return if thread?
|
|
76
78
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
@
|
|
80
|
-
@
|
|
79
|
+
if event == :c_call || event == :c_return
|
|
80
|
+
@call_symbol = '#'
|
|
81
|
+
@frame_env = method_id
|
|
82
|
+
@class_name = defined_class
|
|
83
|
+
return
|
|
81
84
|
end
|
|
85
|
+
|
|
86
|
+
there = trace_point.binding.of_caller(3)
|
|
87
|
+
current = BindingOfCallers::Revealed.new there
|
|
88
|
+
@call_symbol = current.call_symbol
|
|
89
|
+
@frame_env = current.frame_env.to_sym
|
|
90
|
+
@class_name = current.klass
|
|
82
91
|
rescue => e
|
|
83
|
-
puts e
|
|
92
|
+
puts e.message
|
|
93
|
+
puts(Interfaces.each_with_object({}){|attr, h| h[attr] = send(attr)})
|
|
94
|
+
puts e.backtrace
|
|
95
|
+
raise e
|
|
84
96
|
end
|
|
85
97
|
|
|
86
98
|
def b_call?
|
|
87
99
|
event == :b_call
|
|
88
100
|
end
|
|
89
101
|
|
|
90
|
-
def c_call?
|
|
91
|
-
event == :c_call
|
|
92
|
-
end
|
|
93
|
-
|
|
94
102
|
def class?
|
|
95
103
|
event == :class
|
|
96
104
|
end
|
|
@@ -157,22 +165,12 @@ EOM
|
|
|
157
165
|
@km ||= "#{class_name}#{call_symbol}#{method_name}"
|
|
158
166
|
end
|
|
159
167
|
|
|
160
|
-
def class_name
|
|
161
|
-
c_call? ? defined_class : current.klass
|
|
162
|
-
rescue
|
|
163
|
-
puts event
|
|
164
|
-
end
|
|
165
|
-
|
|
166
168
|
def method_name
|
|
167
|
-
return method_id if c_call
|
|
169
|
+
return method_id if event == :c_call
|
|
168
170
|
return frame_env if b_call? || class?
|
|
169
171
|
(method_id == frame_env) ? method_id : "#{method_id} -> #{frame_env}"
|
|
170
172
|
end
|
|
171
173
|
|
|
172
|
-
def call_symbol
|
|
173
|
-
c_call? ? '#' : current.call_symbol
|
|
174
|
-
end
|
|
175
|
-
|
|
176
174
|
def source_location
|
|
177
175
|
"#{path}:#{lineno}"
|
|
178
176
|
end
|
|
@@ -182,7 +180,6 @@ EOM
|
|
|
182
180
|
end
|
|
183
181
|
|
|
184
182
|
class Loader
|
|
185
|
-
|
|
186
183
|
attr_reader :point_classes, :config
|
|
187
184
|
|
|
188
185
|
def initialize *enhancement, config
|
data/lib/trace_tree/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: trace_tree
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- ken
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2023-01-18 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|