class Crass::Parser

def parse_properties(input = @tokens)

parsing the contents of an HTML element's `style` attribute.
(and any non-declaration nodes that were in the input). This is useful for
Parses a list of declarations and returns an array of `:property` nodes
def parse_properties(input = @tokens)
  properties = []
  parse_declarations(input).each do |decl|
    unless decl[:node] == :declaration
      properties << decl
      next
    end
    children = decl[:value].dup
    children.pop if children.last && children.last[:node] == :semicolon
    properties << create_node(:property,
      :name      => decl[:name],
      :value     => parse_value(decl[:value]),
      :children  => children,
      :important => decl[:important],
      :tokens    => decl[:tokens])
  end
  properties
end