Class: WIP::Runner::CLI
- Inherits:
-
Object
show all
- Defined in:
- lib/wip/runner/cli.rb
Defined Under Namespace
Classes: Help, Parser, Version
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(io = HighLine.new) ⇒ CLI
Returns a new instance of CLI.
34
35
36
37
38
39
40
|
# File 'lib/wip/runner/cli.rb', line 34
def initialize(io = HighLine.new)
@io = io
@parser = Parser.new(io)
trap('INT') { quit }
trap('TERM') { quit }
end
|
Class Method Details
.allow(path, search) ⇒ Object
7
8
9
10
11
12
13
14
15
|
# File 'lib/wip/runner/cli.rb', line 7
def allow(path, search)
search.each do |dir|
extension = File.join(dir, path)
if File.exist?("#{extension}.rb")
$:.push(File.join(extension, 'lib'))
require extension
end
end
end
|
.namespace ⇒ Object
29
30
31
|
# File 'lib/wip/runner/cli.rb', line 29
def namespace
@namespace || WIP::Runner
end
|
.namespace=(value) ⇒ Object
25
26
27
|
# File 'lib/wip/runner/cli.rb', line 25
def namespace=(value)
@namespace = value
end
|
.signature ⇒ Object
21
22
23
|
# File 'lib/wip/runner/cli.rb', line 21
def signature
@signature || 'wip-runner'
end
|
.signature=(value) ⇒ Object
17
18
19
|
# File 'lib/wip/runner/cli.rb', line 17
def signature=(value)
@signature = value
end
|
Instance Method Details
#quit ⇒ Object
42
43
44
|
# File 'lib/wip/runner/cli.rb', line 42
def quit
exit
end
|
#run(args = []) ⇒ Object
46
47
48
49
50
51
52
53
|
# File 'lib/wip/runner/cli.rb', line 46
def run(args = [])
recipient = (command(args) || @parser)
recipient.run(args)
rescue InvalidCommand => e
@io.say(e.message)
@io.newline
@parser.help
end
|