add_callback(callback)
click to toggle source
def add_callback(callback)
@callbacks << callback
end
attributes()
click to toggle source
def attributes
@attributes ||= declarations.attribute_list
end
compile()
click to toggle source
def compile
attributes
end
define_trait(trait)
click to toggle source
def define_trait(trait)
@defined_traits << trait
end
inherit_traits(new_traits)
click to toggle source
def inherit_traits(new_traits)
@traits += new_traits
end
overridable()
click to toggle source
def overridable
declarations.overridable
self
end
to_create(&block)
click to toggle source
def to_create(&block)
if block_given?
@to_create = block
else
@to_create
end
end
traits()
click to toggle source
def traits
@traits.reverse.map { |name| trait_by_name(name) }
end