123456789_123456789_123456789_123456789_123456789_

Class: Gem::SilentUI

Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
Instance Chain:
self, StreamUI
Inherits: Gem::StreamUI
Defined in: lib/rubygems/user_interaction.rb

Overview

SilentUI is a UI choice that is absolutely silent.

Class Method Summary

  • .new ⇒ SilentUI constructor

    The SilentUI has no arguments as it does not use any stream.

StreamUI - Inherited

.new

Creates a new StreamUI wrapping in_stream for user input, out_stream for standard output, err_stream for error output.

Deprecate - Extended

deprecate

Simple deprecation method that deprecates name by wrapping it up in a dummy method.

skip_during

Temporarily turn off warnings.

Instance Attribute Summary

StreamUI - Inherited

#errs

The error stream.

#ins

The input stream.

#outs

The output stream.

#tty?

Returns true if TTY methods should be used on this StreamUI.

Instance Method Summary

StreamUI - Inherited

#_gets_noecho,
#alert

Display an informational alert.

#alert_error

Display an error message in a location expected to get error messages.

#alert_warning

Display a warning on stderr.

#ask

Ask a question.

#ask_for_password

Ask for a password.

#ask_yes_no

Ask a question.

#backtrace

Prints a formatted backtrace to the errors stream if backtraces are enabled.

#choose_from_list

Choose from a list of options.

#close,
#debug

Display a debug message on the same location as error messages.

#download_reporter

Return a download reporter object chosen from the current verbosity.

#progress_reporter

Return a progress reporter object chosen from the current verbosity.

#require_io_console,
#say

Display a statement.

#terminate_interaction

Terminate the application with exit code status, running any exit handlers that might have been defined.

Constructor Details

.newSilentUI

The SilentUI has no arguments as it does not use any stream.

[ GitHub ]

  
# File 'lib/rubygems/user_interaction.rb', line 635

def initialize
  reader, writer = nil, nil

  reader = File.open(IO::NULL, 'r')
  writer = File.open(IO::NULL, 'w')

  super reader, writer, writer, false
end

Instance Method Details

#close

[ GitHub ]

  
# File 'lib/rubygems/user_interaction.rb', line 644

def close
  super
  @ins.close
  @outs.close
end

#download_reporter(*args)

This method is for internal use only.
[ GitHub ]

  
# File 'lib/rubygems/user_interaction.rb', line 650

def download_reporter(*args) # :nodoc:
  SilentDownloadReporter.new(@outs, *args)
end

#progress_reporter(*args)

This method is for internal use only.
[ GitHub ]

  
# File 'lib/rubygems/user_interaction.rb', line 654

def progress_reporter(*args) # :nodoc:
  SilentProgressReporter.new(@outs, *args)
end