class SlowlaneItunes

Public Instance Methods

autocomplete() click to toggle source
# File lib/slowlane/itunes/command.rb, line 21
def autocomplete
  class_options = self.class.class_options
  commands = self.class.commands
  commands.each do |command_name,command|
    unless command.instance_of? Thor::HiddenCommand
      subcommand_class = Object.const_get("Slowlane::Itunes::"+command_name.capitalize)
      subcommand_class.commands.each do |subcommand_name,subcommand|
        available_options = []
        options = subcommand.options
        options.each do |option_name,option|
          available_options << "--#{option_name}"
        end
        class_options.each do |option_name,option|
          available_options << "--#{option_name}"
        end
        puts "#{command_name}::#{subcommand_name} : #{available_options.join(',')}"
      end
    end
  end

end