Sha256: 5fe7fd404f971b4cffb1ba2056357c3dff2ac75090b79bbd4e8af2e77fcd1f8b

Contents?: true

Size: 935 Bytes

Versions: 2

Compression:

Stored size: 935 Bytes

Contents

module Eye::Dsl::Main
  attr_accessor :parsed_config, :parsed_filename

  def application(name, &block)
    Eye::Dsl.debug "=> app: #{name}"    
    opts = Eye::Dsl::ApplicationOpts.new(name)
    opts.instance_eval(&block)

    @parsed_config.applications[name.to_s] = opts.config if opts.config

    Eye::Dsl.debug "<= app: #{name}"
  end

  alias app application

  def load(glob = '')
    return if glob.blank?

    Eye::Dsl::Opts.with_parsed_file(glob) do |mask|
      Dir[mask].each do |path|
        Eye::Dsl.debug "=> load #{path}"
        Eye.parsed_filename = path
        res = Kernel.load(path)
        Eye.info "load: subload #{path} (#{res})"
        Eye::Dsl.debug "<= load #{path}"
      end
    end
  end

  def config(&block)
    Eye::Dsl.debug "=> config"

    opts = Eye::Dsl::ConfigOpts.new
    opts.instance_eval(&block)
    @parsed_config.settings.merge!(opts.config)

    Eye::Dsl.debug "<= config"
  end
  
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
reel-eye-0.3.2 lib/eye/dsl/main.rb
eye-0.3.2 lib/eye/dsl/main.rb