class ActiveSupport::Callbacks::CallTemplate::MethodCall
Public Class Methods
new(method)
click to toggle source
# File lib/active_support/callbacks.rb, line 377 def initialize(method) @method_name = method end
Public Instance Methods
expand(target, value, block)
click to toggle source
Return the parts needed to make this call, with the given input values.
Returns an array of the form:
[target, block, method, *arguments]
This array can be used as such:
target.send(method, *arguments, &block)
The actual invocation is left up to the caller to minimize call stack pollution.
# File lib/active_support/callbacks.rb, line 394 def expand(target, value, block) [target, block, @method_name] end
inverted_lambda()
click to toggle source
# File lib/active_support/callbacks.rb, line 404 def inverted_lambda lambda do |target, value, &block| !target.send(@method_name, &block) end end
make_lambda()
click to toggle source
# File lib/active_support/callbacks.rb, line 398 def make_lambda lambda do |target, value, &block| target.send(@method_name, &block) end end