module ActiveRecord::NoTouching
def applied_to?(klass) #:nodoc:
def applied_to?(klass) #:nodoc: klasses.any? { |k| k >= klass } end
def apply_to(klass) #:nodoc:
def apply_to(klass) #:nodoc: klasses.push(klass) yield ensure klasses.pop end
def klasses
def klasses Thread.current[:no_touching_classes] ||= [] end
def no_touching?
def no_touching? NoTouching.applied_to?(self.class) end
def touch(*)
def touch(*) super unless no_touching? end