Sha256: 01a9cd63f90b1a6b85461c86177b5956bfb651a3d60ebc5ea9fcee1a58887bc8
Contents?: true
Size: 841 Bytes
Versions: 1
Compression:
Stored size: 841 Bytes
Contents
require 'relish/commands/dsl/base' require 'relish/commands/dsl/option' require 'relish/commands/dsl/command' require 'relish/commands/dsl/help_text' module Relish module Command module Dsl def option(name, options = {}) Option.new(self).define(name, options) Option.names << name.to_s end def usage(str) HelpText.next_usage = str end def desc(str) HelpText.next_description = str end def command(arg, &block) case arg when Hash name, alias_target = arg.to_a.flatten block = lambda { self.send(alias_target) } when Symbol name = arg else raise ArgumentError end Command.new(self).define(name, &block) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
relish-0.0.9 | lib/relish/commands/dsl.rb |