class IDL::Backend::Configurator

def add_backend(be_name)

def add_backend(be_name)
  @backend.instance_variable_get('@base_backends') << IDL::Backend.load(be_name)
end

def initialize(be_name, root, title, copyright, version)

def initialize(be_name, root, title, copyright, version)
  @backend = IDL::Backend.new(be_name, root, title, copyright, version)
  @be_ext_klass = class << @backend; self; end
end

def on_process_input(&block)

def on_process_input(&block)
  @be_ext_klass.send(:define_method, :_process_input, &block)
  @be_ext_klass.send(:private, :_process_input)
end

def on_setup(&block)

def on_setup(&block)
  @be_ext_klass.send(:define_method, :_setup_be, &block)
  @be_ext_klass.send(:private, :_setup_be)
end