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 SingleLineobject.
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 septo 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 objto the text to be output.
- 
    
      #flush  
    
    Internal use only
    Method present for compatibility, but is a noop. 
- 
    
      #nest(indent)  
    
    Internal use only
    Takes #indent arg, but does nothing with it. 
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
#flush
Method present for compatibility, but is a noop
# File 'lib/prettyprint.rb', line 546
def flush # :nodoc: 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
#nest(indent)
Takes PrettyPrint#indent arg, but does nothing with it.
Yields to a block.
# File 'lib/prettyprint.rb', line 525
def nest(indent) # :nodoc: yield 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