class EverydayThorUtil::SubCommandTypes

Public Class Methods

def_helper(helper_symbol, which_helper, method_name = nil, global = true, parent = nil) click to toggle source
# File lib/everyday_thor_util/plugin-helper.rb, line 46
def def_helper(helper_symbol, which_helper, method_name = nil, global = true, parent = nil)
  case (which_helper)
    when :print_info
      EverydayThorUtil::SubCommandHelpers.register_print_info_helper(global, helper_symbol, method_name, parent)
    else
      puts "Unknown helper #{which_helper}"
  end
end
def_types(command_array_symbol, flag_symbol, command_symbol, helper_symbol = nil) click to toggle source
# File lib/everyday_thor_util/plugin-helper.rb, line 15
def def_types(command_array_symbol, flag_symbol, command_symbol, helper_symbol = nil)
  register_variable command_array_symbol, []
  register_flag_type(flag_symbol)
  register_command_type(command_array_symbol, command_symbol, flag_symbol, helper_symbol)
  register_helper_type(helper_symbol) unless helper_symbol.nil?
end
register_command_type(command_array_symbol, command_symbol, flag_symbol, helper_symbol) click to toggle source
# File lib/everyday_thor_util/plugin-helper.rb, line 31
def register_command_type(command_array_symbol, command_symbol, flag_symbol, helper_symbol)
  register_type(command_symbol) { |list, parent_class, parent|
    EverydayThorUtil::SubCommandHelpers.setup_root(flag_symbol, helper_symbol, parent, parent_class)
    EverydayThorUtil::SubCommandHelpers.filter_list(list, parent).each { |v|
      EverydayThorUtil::SubCommandHelpers.handle_command(command_array_symbol, command_symbol, flag_symbol, helper_symbol, parent_class, list, v)
    }
  }
end
register_flag_type(flag_symbol) click to toggle source
# File lib/everyday_thor_util/plugin-helper.rb, line 22
def register_flag_type(flag_symbol)
  register_type(flag_symbol) { |list, parent_class, parent, has_children|
    EverydayThorUtil::SubCommandHelpers.filter_list(list, parent).each { |v|
      name, opts = EverydayThorUtil::SubCommandHelpers.map_flag_opts(v)
      has_children ? parent_class.class_option(name, opts) : parent_class.option(name, opts)
    }
  }
end
register_helper_type(helper_symbol) click to toggle source
# File lib/everyday_thor_util/plugin-helper.rb, line 40
def register_helper_type(helper_symbol)
  register_type(helper_symbol) { |list, parent_class, parent|
    EverydayThorUtil::SubCommandHelpers.filter_list(list, parent) { |v| v[:options][:global] }.each { |v| EverydayThorUtil::SubCommandHelpers.add_helper(parent_class, v) }
  }
end