@Nullable PsiBuilder.Marker parseAssignment(final PsiBuilder builder, final int mode) {
    final PsiBuilder.Marker left = parseConditional(builder, mode);
    if (left == null) return null;

    final IElementType tokenType = getGtTokenType(builder);
    if (tokenType != null && BasicExpressionParser.ASSIGNMENT_OPS.contains(tokenType)) {
      final PsiBuilder.Marker assignment = left.precede();
      advanceGtToken(builder, tokenType);

      final PsiBuilder.Marker right = parse(builder);
      if (right == null) {
        error(builder, JavaPsiBundle.message("expected.expression"));
      }

      assignment.done(myJavaElementTypeContainer.ASSIGNMENT_EXPRESSION);
      return assignment;
    }

    return left;
  }
@Nullable PsiBuilder.Marker parseAssignment(final PsiBuilder builder, final int mode)