Interface StreamableMacro

  • All Superinterfaces:
    All Known Implementing Classes:

    public interface StreamableMacro
    extends Macro
    Macro that consumes and produces Streamables instead of Strings. Streamable macros should be more efficient than a regular macro, especially in situations where the body of the macro is likely to be large, and processing on the body is either unnecessary or can be delayed until write time.

    Error handling: MacroExecutionExceptions thrown from execute() will be handled normally, and the macro output will be replaced with the appropriate error message. This service is not available to the streamable's writeTo() method. If an error is likely to occur during streaming of the output, the macro must handle processing and displaying the error itself.