class Thor::Arguments
def parse_hash(name)
{ "name" => "string", "age" => "integer" }
Becomes:
[ "name:string", "age:integer" ]
mark it as a hash:
Runs through the argument array getting strings that contains ":" and
def parse_hash(name) return shift if peek.is_a?(Hash) hash = {} while current_is_value? && peek.include?(?:) key, value = shift.split(':',2) hash[key] = value end hash end