parser_infix.go 373 B

12345678910111213141516171819
  1. package parser
  2. import (
  3. "code.osinet.fr/fgm/waiig15/ast"
  4. )
  5. func (p *Parser) parseInfixExpression(left ast.Expression) ast.Expression {
  6. expression := &ast.InfixExpression{
  7. Token: p.curToken,
  8. Operator: p.curToken.Literal,
  9. Left: left,
  10. }
  11. precedence := p.curPrecedence()
  12. p.nextToken()
  13. expression.Right = p.parseExpression(precedence)
  14. return expression
  15. }