Sha256: f04e0778a6f65a3f8e7d1b66e87cde5b791c6fae1ef9631c1865ea8d8d683b09
Contents?: true
Size: 1.13 KB
Versions: 2
Compression:
Stored size: 1.13 KB
Contents
require 'json' require 'derketo/helpers' module Derketo class Event include Derketo::Helpers attr_accessor :class_name, :return_value, :type, :method_id, :parameters, :previous, :next def initialize(tracepoint) @class_name = clean(tracepoint.defined_class.to_s) @return_value = tracepoint.event == :return ? clean(tracepoint.return_value.to_s) : nil @type = tracepoint.event @method_id = clean(tracepoint.method_id.to_s) @parameters = tracepoint.self.method(tracepoint.method_id).parameters @previous = self end def to_h { class: @class_name, type: @type, method: @method_id, parameters: @parameters, return_value: @return_value } end # { # "class": "Mermaid", # "type": "call", # "method": "initialize", # "parameters": [], # "return_value": null # } def to_json JSON.generate(to_h) end # { # :class=>"Mermaid", # :type=>:call, # :method=>:initialize, # :parameters=>[], # :return_value=>nil # } def to_s to_h.to_s end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
derketo-0.1.2 | lib/derketo/events/event.rb |
derketo-0.1.1 | lib/derketo/events/event.rb |