def symbol
      return unless (colon = accept :colon)
      return undo colon if lookahead(:whitespace)

      if (exp = expression).nil?
        error :symbol
      else
        colon + exp[@value]
      end
    end
def symbol
      return unless (colon = accept :colon)
      return undo colon if lookahead(:whitespace)

      if (exp = expression).nil?
        error :symbol
      else
        colon + exp[@value]
      end
    end
Accept a ruby symbol defined through a colon and a trailing expression

 :'symbol'
 :symbol