module Middleman::Base::ClassMethods

def before_processing(&block)

def before_processing(&block)
  @before_processes ||= []
  @before_processes << block
end

def build?; environment == :build; end

Convenience method to check if we're in build mode
def build?; environment == :build; end

def execute_before_processing!(inst)

def execute_before_processing!(inst)
  @before_processes ||= []
  
  @before_processes.all? do |block|
    inst.instance_eval(&block)
  end
end

def set(option, value=self, &block)

Specifically for the asset_host feature
Override Sinatra's set to accept a block
def set(option, value=self, &block)
  if block_given?
    value = Proc.new { block }
  end

  super(option, value, &nil)
end