Rails::Initializable::ClassMethods (original) (raw)
Methods
I
Instance Public methods
initializer(name, opts = {}, &blk)Link
def initializer(name, opts = {}, &blk) raise ArgumentError, "A block must be passed when defining an initializer" unless blk opts[:after] ||= initializers.last.name unless initializers.empty? || initializers.find { |i| i.name == opts[:before] } initializers << Initializer.new(name, nil, opts, &blk) end
initializers()Link
def initializers @initializers ||= Collection.new end
initializers_chain()Link
def initializers_chain initializers = Collection.new ancestors.reverse_each do |klass| next unless klass.respond_to?(:initializers) initializers = initializers + klass.initializers end initializers end
initializers_for(binding)Link
def initializers_for(binding) Collection.new(initializers_chain.map { |i| i.bind(binding) }) end