TaskArguments manage the arguments passed to a task.
- #
- E
- I
- L
- M
- N
- T
- V
- W
| [R] | names |
Create a TaskArgument object with a list of named arguments (given by :names) and a set of associated values (given by :values). :parent is the parent argument object.
Source: show
# File lib/rake/task_arguments.rb, line 14 def initialize(names, values, parent=nil) @names = names @parent = parent @hash = {} @values = values names.each_with_index { |name, i| @hash[name.to_sym] = values[i] unless values[i].nil? } end
Find an argument value by name or index.
Source: show
# File lib/rake/task_arguments.rb, line 42 def [](index) lookup(index.to_sym) end
Source: show
# File lib/rake/task_arguments.rb, line 53 def each(&block) @hash.each(&block) end
Retrive the list of values not associated with named arguments
Source: show
# File lib/rake/task_arguments.rb, line 30 def extras @values[@names.length..-1] || [] end
Source: show
# File lib/rake/task_arguments.rb, line 61 def method_missing(sym, *args) lookup(sym.to_sym) end
Create a new argument scope using the prerequisite argument names.
Source: show
# File lib/rake/task_arguments.rb, line 36 def new_scope(names) values = names.map { |n| self[n] } self.class.new(names, values + extras, self) end
Retrive the complete array of sequential values
Source: show
# File lib/rake/task_arguments.rb, line 25 def to_a @values.dup end
Source: show
# File lib/rake/task_arguments.rb, line 57 def values_at(*keys) keys.map { |k| lookup(k) } end
Specify a hash of default values for task arguments. Use the defaults only if there is no specific value for the given argument.
Source: show
# File lib/rake/task_arguments.rb, line 49 def with_defaults(defaults) @hash = defaults.merge(@hash) end