module Gem::UserInteraction
UserInteraction allows RubyGems to interact with the user through standard methods that can be replaced with more-specific UI methods for different displays.
Since UserInteraction dispatches to a concrete UI class you may need to reference other classes for specific behavior such as Gem::ConsoleUI or Gem::SilentUI.
Example:
class X include Gem::UserInteraction def get_answer n = ask("What is the meaning of life?") end end
Public Instance Methods
Displays an alert statement. Asks a question if
given.
# File lib/rubygems/user_interaction.rb, line 96 def alert statement, question = nil ui.alert statement, question end
Displays an error statement to the error output location.
Asks a question if given.
# File lib/rubygems/user_interaction.rb, line 104 def alert_error statement, question = nil ui.alert_error statement, question end
Displays a warning statement to the warning output location.
Asks a question if given.
# File lib/rubygems/user_interaction.rb, line 112 def alert_warning statement, question = nil ui.alert_warning statement, question end
Asks a question and returns the answer.
# File lib/rubygems/user_interaction.rb, line 119 def ask question ui.ask question end
Asks for a password with a prompt
# File lib/rubygems/user_interaction.rb, line 126 def ask_for_password prompt ui.ask_for_password prompt end
Asks a yes or no question. Returns true for yes, false for
no.
# File lib/rubygems/user_interaction.rb, line 133 def ask_yes_no question, default = nil ui.ask_yes_no question, default end
Asks the user to answer question with an answer from the given
list.
# File lib/rubygems/user_interaction.rb, line 140 def choose_from_list question, list ui.choose_from_list question, list end
Displays the given statement on the standard output (or
equivalent).
# File lib/rubygems/user_interaction.rb, line 147 def say statement = '' ui.say statement end
Terminates the RubyGems process with the given exit_code
# File lib/rubygems/user_interaction.rb, line 154 def terminate_interaction exit_code = 0 ui.terminate_interaction exit_code end
Calls say with msg or the results of the block if
really_verbose is true.
# File lib/rubygems/user_interaction.rb, line 162 def verbose msg = nil say(msg || yield) if Gem.configuration.really_verbose end