Class: Byebug::MethodSigCommand
Overview
Implements byebug’s ‘method sig’ command.
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Command
command_exists?, commands, find, format_subcmd, format_subcmds, help, inherited, #initialize, load_commands, #match, register_setting_get, register_setting_set, register_setting_var, settings, settings_map, terminal_width
Class Method Details
.description ⇒ Object
34
35
36
|
# File 'lib/byebug/commands/method.rb', line 34
def description
%{m[ethod] sig[nature] <obj>\tshow the signature of a method}
end
|
.names ⇒ Object
30
31
32
|
# File 'lib/byebug/commands/method.rb', line 30
def names
%w(method)
end
|
Instance Method Details
#execute ⇒ Object
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/byebug/commands/method.rb', line 16
def execute
obj = bb_eval('method(:%s)' % @match[1])
if obj.is_a?(Method)
begin
print "%s\n", obj.signature.to_s
rescue
errmsg("Can't get signature for '#{@match[1]}'\n")
end
else
errmsg("Can't make method out of '#{@match[1]}'\n")
end
end
|
#regexp ⇒ Object
12
13
14
|
# File 'lib/byebug/commands/method.rb', line 12
def regexp
/^\s* m(?:ethod)? \s+ sig(?:nature)? \s+ (\S+) \s*$/x
end
|