module Crew::Task::Arguments::DSL

Attributes

_arguments[RW]

Public Class Methods

load(arguments, &blk) click to toggle source
# File lib/crew/task/arguments/dsl.rb, line 7
def self.load(arguments, &blk)
  loader = Class.new do
    include DSL
  end.new
  loader._arguments = arguments
  loader.instance_eval(&blk) if blk
end

Public Instance Methods

arg(name, desc = nil, opts = {}) click to toggle source
# File lib/crew/task/arguments/dsl.rb, line 15
def arg(name, desc = nil, opts = {})
  opts, desc = desc, nil if desc.is_a?(Hash)
  _arguments.define(name, :required, desc, opts)
end
args(name, desc = nil, opts = {}) click to toggle source
# File lib/crew/task/arguments/dsl.rb, line 20
def args(name, desc = nil, opts = {})
  opts, desc = desc, nil if desc.is_a?(Hash)
  _arguments.define(name, :glob, desc, opts)
end
opt(name, desc = nil, opts = {}) click to toggle source
# File lib/crew/task/arguments/dsl.rb, line 25
def opt(name, desc = nil, opts = {})
  opts, desc = desc, nil if desc.is_a?(Hash)
  _arguments.define(name, :opt, desc, opts)
end