class Yarrow::Generator

Generates documentation from a model.

Attributes

config[R]

private

workflow[R]

private

Public Class Methods

new(config) click to toggle source
# File lib/yarrow/generator.rb, line 38
def initialize(config)
  @config = config
  @workflow = Process::Workflow.new(config)
end

Public Instance Methods

generate() click to toggle source
# File lib/yarrow/generator.rb, line 53
def generate
  process do |manifest|
    generators.each do |generator|
      generator.generate(manifest)
    end
  end
end
generators() click to toggle source
# File lib/yarrow/generator.rb, line 65
def generators
  [Web::Generator.new(config)]
end
process(&block) click to toggle source
# File lib/yarrow/generator.rb, line 43
def process(&block)
  workflow.connect(ScanSource.new)
  workflow.connect(ExpandCollections.new)
  workflow.connect(FlattenManifest.new)

  workflow.process do |result|
    block.call(result)
  end
end