class Glimmer::Util::ProcTracker

Decorator that provides tracking facilities for Ruby procs, tracking owner (string), invoked_form method name (symbol/string), and called? (boolean)

Attributes

invoked_from[R]
owner[R]

Public Class Methods

new(proc = nil, owner: nil, invoked_from: nil, &block) click to toggle source
Calls superclass method
# File lib/glimmer/util/proc_tracker.rb, line 30
def initialize(proc = nil, owner: nil, invoked_from: nil, &block)
  super(proc || block)
  @owner = owner
  @invoked_from = invoked_from
end

Public Instance Methods

call(*args) click to toggle source
# File lib/glimmer/util/proc_tracker.rb, line 36
def call(*args)
  __getobj__.call(*args)
  @called = true
end
called?() click to toggle source
# File lib/glimmer/util/proc_tracker.rb, line 41
def called?
  !!@called
end
respond_to?(method, *args, &block) click to toggle source
Calls superclass method
# File lib/glimmer/util/proc_tracker.rb, line 45
def respond_to?(method, *args, &block)
  %w[owner invoked_from called?].include?(method.to_s) || super(method, *args, &block)
end