Class: Gem::StreamUI::SimpleProgressReporter
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Instance Chain:
|
|
| Inherits: | Object |
| Defined in: | lib/rubygems/user_interaction.rb |
Overview
A basic dotted progress reporter.
Class Method Summary
-
.new(out_stream, size, initial_message, terminal_message = "complete") ⇒ SimpleProgressReporter
constructor
Creates a new progress reporter that will write to
out_streamforsizeitems.
Instance Attribute Summary
-
#count
readonly
The number of progress items counted so far.
::Gem::DefaultUserInteraction - Included
Instance Method Summary
-
#done
Prints out the terminal message.
-
#updated(message)
Prints out a dot and ignores
message.
::Gem::DefaultUserInteraction - Included
Constructor Details
.new(out_stream, size, initial_message, terminal_message = "complete") ⇒ SimpleProgressReporter
Creates a new progress reporter that will write to out_stream for size items. Shows the given initial_message when progress starts and the terminal_message when it is complete.
# File 'lib/rubygems/user_interaction.rb', line 461
def initialize(out_stream, size, , = "complete") @out = out_stream @total = size @count = 0 @terminal_message = @out.puts end
Instance Attribute Details
#count (readonly)
The number of progress items counted so far.
# File 'lib/rubygems/user_interaction.rb', line 454
attr_reader :count
Instance Method Details
#done
Prints out the terminal message.
# File 'lib/rubygems/user_interaction.rb', line 483
def done @out.puts "\n#{@terminal_message}" end
#updated(message)
Prints out a dot and ignores message.
# File 'lib/rubygems/user_interaction.rb', line 474
def updated() @count += 1 @out.print "." @out.flush end