lib/express_templates/components/base.rb in express_templates-0.11.0 vs lib/express_templates/components/base.rb in express_templates-0.11.1

- old
+ new

@@ -13,16 +13,19 @@ class Base < Arbre::Component class_attribute :before_build_hooks self.before_build_hooks = [] + class_attribute :builder_method_name + def self.builder_method_and_class(method_name, klass) Arbre::Element::BuilderMethods.class_eval <<-EOF, __FILE__, __LINE__ def #{method_name}(*args, &block) insert_tag ::#{klass.name}, *args, &block end EOF + self.builder_method_name = method_name # puts "added #{method_name} -> #{klass.name}" end def initialize(*) super @@ -71,18 +74,14 @@ def resource helpers.resource end def self.inherited(subclass) - builder_method_and_class subclass.builder_method_name, subclass + subclass.builder_method_and_class subclass.to_s.demodulize.underscore, subclass end - def self.builder_method_name - to_s.demodulize.underscore - end - - def builder_method_name - self.class.builder_method_name + def self.builder_method(name) + builder_method_and_class name, self end def self.descendants ObjectSpace.each_object(Class).select { |klass| klass < self } end