Sha256: 1228075dcd680ea7298cf475b22067d5ec3ec6889479e510bbeb45ee838e744b

Contents?: true

Size: 459 Bytes

Versions: 7

Compression:

Stored size: 459 Bytes

Contents

module Liquidscript
  class Buffer

    def initialize(*args)
      @_buf   = args
      @_cache = nil
      @_join  = ''
    end

    def append(*a)
      @_cache = nil
      @_buf.push(*a)
      self
    end

    def set_join!(to)
      @_join = to
    end

    alias_method :<<, :append
    alias_method :push, :append

    def to_s
      @_cache ||= begin
        @_buf.join @_join
      end
    end

    def inspect
      to_s.inspect
    end

  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
liquidscript-0.1.5 lib/liquidscript/buffer.rb
liquidscript-0.1.4 lib/liquidscript/buffer.rb
liquidscript-0.1.3 lib/liquidscript/buffer.rb
liquidscript-0.1.2 lib/liquidscript/buffer.rb
liquidscript-0.1.1 lib/liquidscript/buffer.rb
liquidscript-0.1.0 lib/liquidscript/buffer.rb
liquidscript-0.0.1 lib/liquidscript/buffer.rb