All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.vertx.codetrans.StatementModel Maven / Gradle / Ivy

There is a newer version: 4.1.0.Beta1
Show newest version
package io.vertx.codetrans;

import java.util.List;
import java.util.function.Consumer;

/**
 * @author Julien Viet
 */
public class StatementModel extends CodeModel {

  public static StatementModel ifThenElse(ExpressionModel condition, StatementModel thenBody, StatementModel elseBody) {
    return StatementModel.render((renderer) -> {
      renderer.getLang().renderIfThenElse(condition, thenBody, elseBody, renderer);
    });
  }

  public static StatementModel block(List statements) {
    return StatementModel.render(renderer -> renderer.getLang().renderBlock(statements, renderer));
  }

  public static StatementModel render(Consumer c) {
    return new StatementModel() {
      @Override
      public void render(CodeWriter writer) {
        c.accept(writer);
      }
    };
  }

  public static StatementModel render(String s) {
    return new StatementModel() {
      @Override
      public void render(CodeWriter writer) {
        writer.append(s);
      }
    };
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy