Class: Commander::HelpFormatter::ProgramContext

Inherits:
Context show all
Defined in:
lib/commander/help_formatters.rb

Instance Method Summary collapse

Methods inherited from Context

#get_binding, #initialize

Constructor Details

This class inherits a constructor from Commander::HelpFormatter::Context

Instance Method Details

#decorate_binding(bind) ⇒ Object



24
25
26
27
# File 'lib/commander/help_formatters.rb', line 24

def decorate_binding(bind)
  bind.eval("max_command_length = #{max_command_length(bind)}")
  bind.eval("max_aliases_length = #{max_aliases_length(bind)}")
end

#max_aliases_length(bind) ⇒ Object



33
34
35
# File 'lib/commander/help_formatters.rb', line 33

def max_aliases_length(bind)
  max_key_length(bind.eval('@aliases'))
end

#max_command_length(bind) ⇒ Object



29
30
31
# File 'lib/commander/help_formatters.rb', line 29

def max_command_length(bind)
  max_key_length(bind.eval('@commands'))
end

#max_key_length(hash, default = 20) ⇒ Object



37
38
39
40
# File 'lib/commander/help_formatters.rb', line 37

def max_key_length(hash, default = 20)
  longest = hash.keys.max_by(&:size)
  longest ? longest.size : default
end