Sha256: efe12b155fe2fec8e0b019fbd7700afb5fa3ed1cbbb62de4c30f5036bc043d13
Contents?: true
Size: 733 Bytes
Versions: 9
Compression:
Stored size: 733 Bytes
Contents
class Module # Usage: # # class Model # module ModelAspect # declarations do # has_many :aspect_details # validates_presence_of :main_aspect # etc # end # end # end def declarations &blk raise "There should be only one declarations block" if defined? declarations_block class << self attr_accessor :declarations_block def included(mod) mod.class_eval(&declarations_block) unless declarations_block.nil? rescue Exception => ex # When autoloading, you never see real exception unless this rescue puts ex.message puts ex.backtrace.join("\n") raise ex end end self.declarations_block = blk end end
Version data entries
9 entries across 9 versions & 1 rubygems