class Remedy::View
Attributes
body[RW]
header[RW]
length[RW]
Public Class Methods
new(body, header = [], footer = [])
click to toggle source
# File lib/remedy/view.rb, line 3 def initialize body, header = [], footer = [] @header, @body, @footer = header, body, footer end
Public Instance Methods
to_s(force_recompile = false)
click to toggle source
# File lib/remedy/view.rb, line 8 def to_s force_recompile = false unless @view.nil? || force_recompile then @view else reset_length! @view = compile! end end
Protected Instance Methods
compile!()
click to toggle source
# File lib/remedy/view.rb, line 19 def compile! compiled_view = String.new reset_length! merged.each do |line| compiled_view << row(line) end compiled_view end
merged()
click to toggle source
# File lib/remedy/view.rb, line 30 def merged @header.to_a + @body.to_a + @footer.to_a end
reset_length!()
click to toggle source
# File lib/remedy/view.rb, line 39 def reset_length! @length = 0 end
row(line)
click to toggle source
# File lib/remedy/view.rb, line 34 def row line @length += 1 "#{line}#{ANSI.cursor.next_line}" end