Sha256: 1fe20a9a6bd7bb9f4ffeb19d42f2ab5849b626c26c812655aa3325f133ee64ad

Contents?: true

Size: 631 Bytes

Versions: 3

Compression:

Stored size: 631 Bytes

Contents

module Garterbelt
  class Renderer
    include RuPol::Swimsuit
    max_pool_size 10000
    
    attr_accessor :view
    
    def initialize(opts)
      self.view = opts[:view] || raise(ArgumentError, ":view required in initialization options")
    end
    
    # Rendering -----------------------------------------------
    def output
      view.output
    end
    
    def output=(alt_output)
      view.output = alt_output
    end
    
    def level 
      view.level
    end
    
    def indent
      ' '*level*2
    end
    
    def render
      raise NotImplementedError, "Subclasses must implement #render"
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
garterbelt-0.0.4 lib/renderers/renderer.rb
garterbelt-0.0.3 lib/renderers/renderer.rb
garterbelt-0.0.2 lib/renderers/renderer.rb