class Liquid::StandardFilters::InputIterator

def compact

def compact
  to_a.compact
end

def concat(args)

def concat(args)
  to_a.concat(args)
end

def each

def each
  @input.each do |e|
    e = e.respond_to?(:to_liquid) ? e.to_liquid : e
    e.context = @context if e.respond_to?(:context=)
    yield(e)
  end
end

def empty?

def empty?
  @input.each { return false }
  true
end

def initialize(input, context)

def initialize(input, context)
  @context = context
  @input   = if input.is_a?(Array)
    input.flatten
  elsif input.is_a?(Hash)
    [input]
  elsif input.is_a?(Enumerable)
    input
  else
    Array(input)
  end
end

def join(glue)

def join(glue)
  to_a.join(glue.to_s)
end

def reverse

def reverse
  reverse_each.to_a
end

def uniq(&block)

def uniq(&block)
  to_a.uniq(&block)
end