class Middleman::Extension
def generate_resources(resources)
def generate_resources(resources) generator_defs = self.class.resources_generators.reduce({}) do |sum, g| resource_definitions = if g.is_a? Hash g elsif g.is_a? Symbol definition = method(g) if definition.arity == 0 send(g) else send(g, resources) end else {} end sum.merge!(resource_definitions) end resources + generator_defs.map do |path, g| if g.is_a? Symbol definition = method(g) g = if definition.arity == 0 send(g) else send(g, resources) end end ::Middleman::Sitemap::StringResource.new( app.sitemap, path, g ) end end