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.


139
140
141
# File 'lib/rouge/cli.rb', line 139

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

Class Method Details

.descObject


114
115
116
# File 'lib/rouge/cli.rb', line 114

def self.desc
  "print help info"
end

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

Yields:

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

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

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


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

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


143
144
145
# File 'lib/rouge/cli.rb', line 143

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