module Taketo::Printer

Public Class Methods

new() click to toggle source
# File lib/taketo/printer.rb, line 4
def initialize
  @indent_level = 0
  @print_result = ""
end

Public Instance Methods

result() click to toggle source
# File lib/taketo/printer.rb, line 9
def result
  @print_result.chomp
end

Private Instance Methods

indent(level = nil) { || ... } click to toggle source
# File lib/taketo/printer.rb, line 15
def indent(level = nil)
  @first_indent ||= level || @indent_level
  level ? @indent_level = level - @first_indent : @indent_level += 1
  yield
end
put(str = nil) click to toggle source
# File lib/taketo/printer.rb, line 21
def put(str = nil)
  @print_result += ("  " * @indent_level + str.to_s).rstrip.chomp + "\n"
end
put_optional(str, value) click to toggle source
# File lib/taketo/printer.rb, line 25
def put_optional(str, value)
  put "#{str} #{value}" if value
end