class Main::Parameter::DSL
Attributes
param[R]
Public Class Methods
evaluate(param, &block)
click to toggle source
# File lib/main/parameter.rb, line 566 def self.evaluate param, &block new(param).instance_eval(&block) end
new(param)
click to toggle source
# File lib/main/parameter.rb, line 572 def initialize param @param = param end
Public Instance Methods
argument(arg)
click to toggle source
# File lib/main/parameter.rb, line 612 def argument arg param.argument arg end
argument_optional(bool = true)
click to toggle source
# File lib/main/parameter.rb, line 626 def argument_optional bool = true if bool param.argument :optional else param.argument false end end
argument_optional?()
click to toggle source
# File lib/main/parameter.rb, line 633 def argument_optional? param.argument_optional? end
argument_required(bool = true)
click to toggle source
# File lib/main/parameter.rb, line 615 def argument_required bool = true if bool param.argument :required else param.argument false end end
argument_required?()
click to toggle source
# File lib/main/parameter.rb, line 622 def argument_required? param.argument_required? end
arity(value)
click to toggle source
# File lib/main/parameter.rb, line 694 def arity value raise Arity if value.nil? value = -1 if value.to_s == '*' value = Integer value raise Arity if value.zero? param.arity = value if param.arity == -1 optional true end value end
arity?()
click to toggle source
# File lib/main/parameter.rb, line 705 def arity? param.arity? end
attr(*a, &b)
click to toggle source
# File lib/main/parameter.rb, line 589 def attr(*a, &b) fattr(*a, &b) end
cast(sym=nil, &b)
click to toggle source
# File lib/main/parameter.rb, line 655 def cast sym=nil, &b param.cast = sym || b end
cast?()
click to toggle source
# File lib/main/parameter.rb, line 658 def cast? param.cast? end
default(*values, &block)
click to toggle source
# File lib/main/parameter.rb, line 677 def default *values, &block if block.nil? and values.empty? raise ArgumentError, 'no default' end unless values.empty? param.defaults.push(*values) end unless block.nil? param.defaults.push block end param.defaults end
Also aliased as: defaults
defaults?()
click to toggle source
# File lib/main/parameter.rb, line 690 def defaults? param.defaults? end
description(s)
click to toggle source
# File lib/main/parameter.rb, line 669 def description s param.description = s.to_s end
Also aliased as: desc
description?()
click to toggle source
# File lib/main/parameter.rb, line 672 def description? param.description? end
error(which = :instead, &block)
click to toggle source
# File lib/main/parameter.rb, line 709 def error which = :instead, &block param.send "error_handler_#{ which }=", block end
example(*list)
click to toggle source
# File lib/main/parameter.rb, line 593 def example *list list.flatten.compact.each do |elem| param.examples << elem.to_s end end
Also aliased as: examples
fattr(a = nil, &block)
click to toggle source
# File lib/main/parameter.rb, line 576 def fattr a = nil, &block name = param.name a ||= name b = fattr_block_for(name, &block) @param.main.module_eval{ fattr(*a, &b) } end
Also aliased as: attribute
fattr_block_for(name, &block)
click to toggle source
# File lib/main/parameter.rb, line 584 def fattr_block_for name, &block block ||= lambda{|param| [0,1].include?(param.arity) ? param.value : param.values } lambda{|*args| block.call(self.param[name]) } end
optional(bool = true)
click to toggle source
# File lib/main/parameter.rb, line 644 def optional bool = true if bool param.required !bool else param.required bool end end
optional?()
click to toggle source
# File lib/main/parameter.rb, line 651 def optional? param.optional? end
required(bool = true)
click to toggle source
# File lib/main/parameter.rb, line 637 def required bool = true param.required = bool end
required?()
click to toggle source
# File lib/main/parameter.rb, line 640 def required? param.required? end
synopsis(*arg)
click to toggle source
# File lib/main/parameter.rb, line 608 def synopsis *arg arg.size == 0 ? param.synopsis : (param.synopsis arg.first) end
type(*sym)
click to toggle source
# File lib/main/parameter.rb, line 601 def type *sym sym.size == 0 ? param.type : (param.type = sym.first) end
type?()
click to toggle source
# File lib/main/parameter.rb, line 604 def type? param.type? end
validate(sym=nil, &b)
click to toggle source
# File lib/main/parameter.rb, line 662 def validate sym=nil, &b param.validate = sym || b end
validate?()
click to toggle source
# File lib/main/parameter.rb, line 665 def validate? param.validate? end