code: JCExpression term() {
          JCExpression t = term1();
          if ((mode & EXPR) != 0 &&
              token.kind == EQ || PLUSEQ.compareTo(token.kind) <= 0 && token.kind.compareTo(GTGTGTEQ) <= 0)
              return termRest(t);
          else
              return t;
      }
docs: {@literal
  Expression = Expression1 [ExpressionRest]
  ExpressionRest = [AssignmentOperator Expression1]
  AssignmentOperator = "=" | "+=" | "-=" | "*=" | "/=" |
  "&=" | "|=" | "^=" |
  "%=" | "<<=" | ">>=" | ">>>="
  Type = Type1
  TypeNoParams = TypeNoParams1
  StatementExpression = Expression
  ConstantExpression = Expression
  }