module Middleman::Extensions
def load(name)
def load(name) name = name.to_sym return nil unless registered.has_key?(name) extension = registered[name] if extension.is_a?(Proc) extension = extension.call() || nil registered[name] = extension end extension end
def register(name, namespace=nil, &block)
- Yield: - Instead of passing a module in namespace, you can provide
Parameters:
-
namespace
(Module
) -- The extension module -
name
(Symbol
) -- The name of the extension
def register(name, namespace=nil, &block) # If we've already got a matching extension that passed the # version check, bail out. return if registered.has_key?(name.to_sym) && !registered[name.to_sym].is_a?(String) registered[name.to_sym] = if block_given? block elsif namespace namespace end end
def registered
def registered @_registered ||= {} end