class Liquid::For

def strict_parse(markup)

def strict_parse(markup)
  p = Parser.new(markup)
  @variable_name = p.consume(:id)
  raise SyntaxError, options[:locale].t("errors.syntax.for_invalid_in") unless p.id?('in')
  collection_name  = p.expression
  @collection_name = parse_expression(collection_name)
  @name     = "#{@variable_name}-#{collection_name}"
  @reversed = p.id?('reversed')
  while p.look(:comma) || p.look(:id)
    p.consume?(:comma)
    unless (attribute = p.id?('limit') || p.id?('offset'))
      raise SyntaxError, options[:locale].t("errors.syntax.for_invalid_attribute")
    end
    p.consume(:colon)
    set_attribute(attribute, p.expression)
  end
  p.consume(:end_of_string)
end