Class: Rouge::CLI::Help

Inherits:
Rouge::CLI show all
Defined in:
lib/rouge/cli.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Rouge::CLI

class_from_arg, #error!, error!

Constructor Details

#initialize(opts = {}) ⇒ Help

Returns a new instance of Help.



141
142
143
# File 'lib/rouge/cli.rb', line 141

def initialize(opts={})
  @mode = opts[:mode]
end

Class Method Details

.descObject



116
117
118
# File 'lib/rouge/cli.rb', line 116

def self.desc
  "print help info"
end

.doc {|%|usage: rougify help <command>|| ... } ⇒ Object

Yields:

  • (%|usage: rougify help <command>|)


120
121
122
123
124
125
126
# File 'lib/rouge/cli.rb', line 120

def self.doc
  return enum_for(:doc) unless block_given?

  yield %|usage: rougify help <command>|
  yield %||
  yield %|print help info for <command>.|
end

.parse(argv) ⇒ Object



128
129
130
131
132
133
134
135
136
137
138
139
# File 'lib/rouge/cli.rb', line 128

def self.parse(argv)
  opts = { :mode => CLI }
  until argv.empty?
    arg = argv.shift
    klass = class_from_arg(arg)
    if klass
      opts[:mode] = klass
      next
    end
  end
  new(opts)
end

Instance Method Details

#runObject



145
146
147
# File 'lib/rouge/cli.rb', line 145

def run
  @mode.doc.each(&method(:puts))
end