Class: Pry::Pager
Overview
A pager is an ‘IO`-like object that accepts text and either prints it immediately, prints it one page at a time, or streams it to an external program to print one page at a time.
Defined Under Namespace
Classes: NullPager, PageTracker, SimplePager, StopPaging, SystemPager
Instance Attribute Summary collapse
-
#_pry_ ⇒ Object
readonly
Returns the value of attribute pry.
Instance Method Summary collapse
-
#initialize(_pry_) ⇒ Pager
constructor
A new instance of Pager.
-
#open ⇒ Object
Yields a pager object (‘NullPager`, `SimplePager`, or `SystemPager`).
-
#page(text) ⇒ Object
Send the given text through the best available pager (if ‘Pry.config.pager` is enabled).
Constructor Details
#initialize(_pry_) ⇒ Pager
Returns a new instance of Pager.
12 13 14 |
# File 'lib/pry/pager.rb', line 12 def initialize(_pry_) @_pry_ = _pry_ end |
Instance Attribute Details
#_pry_ ⇒ Object (readonly)
Returns the value of attribute pry.
10 11 12 |
# File 'lib/pry/pager.rb', line 10 def _pry_ @_pry_ end |
Instance Method Details
#open ⇒ Object
Yields a pager object (‘NullPager`, `SimplePager`, or `SystemPager`). All pagers accept output with `#puts`, `#print`, `#write`, and `#<<`.
31 32 33 34 35 36 37 |
# File 'lib/pry/pager.rb', line 31 def open pager = best_available yield pager rescue StopPaging ensure pager.close if pager end |
#page(text) ⇒ Object
Send the given text through the best available pager (if ‘Pry.config.pager` is enabled). If you want to send text through in chunks as you generate it, use `open` to get a writable object instead.
22 23 24 25 26 |
# File 'lib/pry/pager.rb', line 22 def page(text) open do |pager| pager << text end end |