Module: Toys::StandardMixins::Highline
- Includes:
 - Mixin
 
- Defined in:
 - lib/toys/standard_mixins/highline.rb
 
Overview
A mixin that provides access to the capabilities of the highline gem.
This mixin requires the highline gem, version 2.0 or later. It will attempt to install the gem if it is not available.
You may make these methods available to your tool by including the following directive in your tool configuration:
include :highline
A HighLine object will then be available by calling the #highline
method. For information on using this object, see the
Highline documentation. Some of
the most common HighLine methods, such as say, are also mixed into the
tool and can be called directly.
You can configure the HighLine object by passing options to the include
directive. For example:
include :highline, my_stdin, my_stdout
The arguments will be passed on to the HighLine constructor.
Constant Summary collapse
- KEY =
          
Context key for the highline object.
 ::Object.new.freeze
Instance Method Summary collapse
- 
  
    
      #agree(*args, &block)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#agree.
 - 
  
    
      #ask(*args, &block)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#ask.
 - 
  
    
      #choose(*args, &block)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#choose.
 - 
  
    
      #color(*args)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#color.
 - 
  
    
      #color_code(*args)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#color_code.
 - 
  
    
      #highline  ⇒ ::HighLine 
    
    
  
  
  
  
  
  
  
  
  
    
A tool-wide HighLine instance.
 - 
  
    
      #indent(*args, &block)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#indent.
 - 
  
    
      #list(*args, &block)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#list.
 - 
  
    
      #new_scope  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#new_scope.
 - 
  
    
      #newline  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#newline.
 - 
  
    
      #puts(*args)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#puts.
 - 
  
    
      #say(*args, &block)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#say.
 - 
  
    
      #uncolor(*args)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Calls HighLine#uncolor.
 
Methods included from Mixin
Instance Method Details
#agree(*args, &block) ⇒ Object
Calls HighLine#agree
      51 52 53  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 51 def agree(*args, &block) self[KEY].agree(*args, &block) end  | 
  
#ask(*args, &block) ⇒ Object
Calls HighLine#ask
      58 59 60  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 58 def ask(*args, &block) self[KEY].ask(*args, &block) end  | 
  
#choose(*args, &block) ⇒ Object
Calls HighLine#choose
      65 66 67  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 65 def choose(*args, &block) self[KEY].choose(*args, &block) end  | 
  
#color(*args) ⇒ Object
Calls HighLine#color
      107 108 109  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 107 def color(*args) self[KEY].color(*args) end  | 
  
#color_code(*args) ⇒ Object
Calls HighLine#color_code
      114 115 116  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 114 def color_code(*args) self[KEY].color_code(*args) end  | 
  
#highline ⇒ ::HighLine
A tool-wide HighLine instance
      44 45 46  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 44 def highline self[KEY] end  | 
  
#indent(*args, &block) ⇒ Object
Calls HighLine#indent
      86 87 88  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 86 def indent(*args, &block) self[KEY].indent(*args, &block) end  | 
  
#list(*args, &block) ⇒ Object
Calls HighLine#list
      72 73 74  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 72 def list(*args, &block) self[KEY].list(*args, &block) end  | 
  
#new_scope ⇒ Object
Calls HighLine#new_scope
      128 129 130  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 128 def new_scope self[KEY].new_scope end  | 
  
#newline ⇒ Object
Calls HighLine#newline
      93 94 95  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 93 def newline self[KEY].newline end  | 
  
#puts(*args) ⇒ Object
Calls HighLine#puts
      100 101 102  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 100 def puts(*args) self[KEY].puts(*args) end  | 
  
#say(*args, &block) ⇒ Object
Calls HighLine#say
      79 80 81  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 79 def say(*args, &block) self[KEY].say(*args, &block) end  | 
  
#uncolor(*args) ⇒ Object
Calls HighLine#uncolor
      121 122 123  | 
    
      # File 'lib/toys/standard_mixins/highline.rb', line 121 def uncolor(*args) self[KEY].uncolor(*args) end  |