Class: PrettyPrint::SingleLine
Relationships & Source Files | |
Inherits: | Object |
Defined in: | lib/prettyprint.rb |
Overview
SingleLine
is used by singleline_format
It is passed to be similar to a ::PrettyPrint object itself, by responding to:
but instead, the output has no line breaks
Class Method Summary
-
.new(output, maxwidth = nil, newline = nil) ⇒ SingleLine
constructor
Create a
SingleLine
object.
Instance Attribute Summary
-
#first? ⇒ Boolean
readonly
This is used as a predicate, and ought to be called first.
Instance Method Summary
-
#breakable(sep = ' ', width = nil)
Appends
sep
to the text to be output. -
#group(indent = nil, open_obj = '', close_obj = '', open_width = nil, close_width = nil)
Opens a block for grouping objects to be pretty printed.
-
#text(obj, width = nil)
Add
obj
to the text to be output.
Constructor Details
.new(output, maxwidth = nil, newline = nil) ⇒ SingleLine
Create a SingleLine
object
Arguments:
-
PrettyPrint#output - String (or similar) to store rendered text. Needs to respond to '<<'
-
PrettyPrint#maxwidth - Argument position expected to be here for compatibility.
This argument is a noop.
-
PrettyPrint#newline - Argument position expected to be here for compatibility.
This argument is a noop.
Instance Attribute Details
#first? ⇒ Boolean
(readonly)
This is used as a predicate, and ought to be called first.
# File 'lib/prettyprint.rb', line 550
def first? result = @first[-1] @first[-1] = false result end
Instance Method Details
#breakable(sep = ' ', width = nil)
Appends sep
to the text to be output. By default sep
is ' '
width
argument is here for compatibility. It is a noop argument.
# File 'lib/prettyprint.rb', line 518
def breakable(sep=' ', width=nil) @output << sep end
#group(indent = nil, open_obj = '', close_obj = '', open_width = nil, close_width = nil)
Opens a block for grouping objects to be pretty printed.
Arguments:
-
PrettyPrint#indent - noop argument. Present for compatibility.
-
open_obj
- text appended before the &blok. Default is '' -
close_obj
- text appended after the &blok. Default is '' -
open_width
- noop argument. Present for compatibility. -
close_width
- noop argument. Present for compatibility.
# File 'lib/prettyprint.rb', line 537
def group(indent=nil, open_obj='', close_obj='', open_width=nil, close_width=nil) @first.push true @output << open_obj yield @output << close_obj @first.pop end
#text(obj, width = nil)
Add obj
to the text to be output.
width
argument is here for compatibility. It is a noop argument.
# File 'lib/prettyprint.rb', line 511
def text(obj, width=nil) @output << obj end