class Middleman::Builder

def initialize(app, opts={})

Parameters:
  • opts (Hash) -- The builder options
  • app (Middleman::Application) -- The app to build.
def initialize(app, opts={})
  @app = app
  @source_dir = Pathname(File.join(@app.root, @app.config[:source]))
  @build_dir = Pathname(@app.config[:build_dir])
  if @build_dir.expand_path.relative_path_from(@source_dir).to_s =~ /\A[.\/]+\Z/
    raise ":build_dir (#{@build_dir}) cannot be a parent of :source_dir (#{@source_dir})"
  end
  @glob = opts.fetch(:glob)
  @cleaning = opts.fetch(:clean)
  @parallel = opts.fetch(:parallel, true)
  rack_app = ::Middleman::Rack.new(@app).to_app
  @rack = ::Rack::MockRequest.new(rack_app)
  @callbacks = ::Middleman::CallbackManager.new
  @callbacks.install_methods!(self, [:on_build_event])
end