method
conditional
conditional(callback_sequence, user_callback, user_conditions)
private
Hide source
# File activesupport/lib/active_support/callbacks.rb, line 322 def self.conditional(callback_sequence, user_callback, user_conditions) callback_sequence.around do |env, &run| target = env.target value = env.value if user_conditions.all? { |c| c.call(target, value) } user_callback.call(target, value) { env = run.call env env.value } env else run.call env end end end