Interface CodeGenerator

  • Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface CodeGenerator
    Represents a code generation operation that accepts the current GeneratorState and performs operations against that state.
    • Method Detail

      • generate

        void generate​(GeneratorState state)
               throws java.io.IOException
        Generates code and writes the bytes into the given OutputStream.
        Throws:
        java.io.IOException
      • andThen

        default CodeGenerator andThen​(CodeGenerator after)
        Returns a composed CodeGenerator that performs, in sequence, this operation followed by the after operation. If performing either operation throws an exception, it is relayed to the caller of the composed operation. If performing this operation throws an exception, the after operation will not be performed.
        Parameters:
        after - the operation to perform after this operation
        Returns:
        a composed Consumer that performs in sequence this operation followed by the after operation
        Throws:
        java.lang.NullPointerException - if after is null