code: func (p *Parser) UnaryExpression() bool {
  
  	c := p.PeekByte()
  
  	if IsLetter(rune(c)) {
  		p.ev.Add(TypePath)
  		p.ev.Inc()
  		p.Path()
  		p.ev.Dec()
  		return true
  	}
  
  	b, ok := p.Number()
  	if ok {
  		p.ev.Add(b)
  		return true
  	}
  
  	b, ok, _ = p.Quoted(0)
  	if ok {
  		p.ev.Add(TypeString)
  		p.ev.Inc()
  		p.ev.Add(b)
  		p.ev.Dec()
  		return true
  	}
  
  	b, ok = p.Operator()
  	if ok {
  		p.ev.Add(b)
  	}
  
  	if p.PeekByte() == '(' {
  		p.Byte() // Consume the '('
  		p.ev.Add(TypeGroup)
  		p.ev.Inc()
  		p.Space()
  		p.Expression()
  		p.Space()
  		p.ev.Dec()
  
  		if p.PeekByte() != ')' {
  			return false
  		}
  		p.Byte() // Consume the ')'
  		return true
  	}
  
  	return p.Path()
  }
docs: // UnaryExpression := cpath | constant | op1 cpath | op1 constant | '(' expr ')' | op1 '(' expr ')'
  //