module Sequel::Plugins::Subclasses::ClassMethods
def descendents
def descendents Sequel.synchronize{subclasses.dup}.map{|x| [x] + x.send(:descendents)}.flatten end
def freeze_descendents
Freeze all descendent classes. This also finalizes the associations for those
def freeze_descendents descendents.each(&:finalize_associations).each(&:freeze) end
def inherited(subclass)
and initialize a new subclasses instance variable
Add the subclass to this model's current subclasses,
def inherited(subclass) super Sequel.synchronize{subclasses << subclass} on_subclass.call(subclass) if on_subclass end