@Override
      public void writeStatement(StringBuilder builder, ExpressionContext context) {
        final GrExpression condition = whileStatement.getCondition();
        final GrStatement body = whileStatement.getBody();

        builder.append("while (");
        if (condition != null) {
          writeExpression(condition, builder, context);
        }
        builder.append(" )");
        if (body != null) {
          body.accept(new CodeBlockGenerator(builder, context.extend(), null));
        }
      }
@Override
      public void writeStatement(StringBuilder builder, ExpressionContext context)