Class: Spud::TaskArg
Instance Method Summary collapse
- #has_default? ⇒ Boolean
-
#initialize(name, type, default: nil) ⇒ TaskArg
constructor
A new instance of TaskArg.
- #named? ⇒ Boolean
- #ordered? ⇒ Boolean
- #required? ⇒ Boolean
- #to_s ⇒ Object
Constructor Details
#initialize(name, type, default: nil) ⇒ TaskArg
Returns a new instance of TaskArg.
9 10 11 12 13 14 15 |
# File 'lib/spud/task_arg.rb', line 9 def initialize(name, type, default: nil) raise 'must be of type "ordered" or "named"' unless %w[ordered named].include?(type) @name = name @type = type @default = default end |
Instance Method Details
#has_default? ⇒ Boolean
23 24 25 |
# File 'lib/spud/task_arg.rb', line 23 def has_default? !!@default end |
#named? ⇒ Boolean
33 34 35 |
# File 'lib/spud/task_arg.rb', line 33 def named? @type == 'named' end |
#ordered? ⇒ Boolean
28 29 30 |
# File 'lib/spud/task_arg.rb', line 28 def ordered? @type == 'ordered' end |
#required? ⇒ Boolean
18 19 20 |
# File 'lib/spud/task_arg.rb', line 18 def required? !has_default? end |
#to_s ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/spud/task_arg.rb', line 38 def to_s if ordered? if has_default? "<#{@name}=#{@default}>" else "<#{@name}>" end else if has_default? "--#{@name}=#{@default}" else "--#{@name}" end end end |