Sha256: 5589eac93f52501eedc28f0948e20fc319e3220249388737a85100ffa8d0402d

Contents?: true

Size: 577 Bytes

Versions: 1

Compression:

Stored size: 577 Bytes

Contents

module Relish
  module Command
    module Dsl
      class Option < Base
        
        def define(name, options = {})
          name = name.to_s
          default_proc = options[:default] || Proc.new {}

          context_eval do
            define_method(name) do
              cli_options[name] ||
              local_options_file[name] ||
              global_options_file[name] ||
              instance_exec(&default_proc)
            end
          end
        end
        
        def self.names
          @@names ||= []
        end
        
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
relish-0.0.9 lib/relish/commands/dsl/option.rb