class Dentaku::Token

def ==(other)

def ==(other)
  (category.nil? || other.category.nil? || category == other.category) &&
  (value.nil?    || other.value.nil?    || value    == other.value)
end

def empty?

def empty?
  length.zero?
end

def grouping?

def grouping?
  is?(:grouping)
end

def initialize(category, value, raw_value = nil)

def initialize(category, value, raw_value = nil)
  @category  = category
  @value     = value
  @raw_value = raw_value
end

def is?(c)

def is?(c)
  category == c
end

def length

def length
  raw_value.to_s.length
end

def to_s

def to_s
  raw_value || value
end