Package owl.run.modules

## Interface Transformer.Instance

- All Known Implementing Classes:
    `ImplicitMinimizeTransformer`, `RabinDegeneralization`, `SimplifierTransformer`, `Transformers.SimpleTransformer`
  Enclosing interface:
    Transformer
  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 static interface Transformer.Instance

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default void` | `closeTransformer()` | Utility method to clean up any stateful resources.
    `Object` | `transform​(Object object, PipelineExecutionContext context)` | Applies the transformation represented by this transformer to the given object.

- - ### Method Detail

    - #### closeTransformer

          default void closeTransformer()

      Utility method to clean up any stateful resources. It will be called exactly once after the input ceased and all tasks are finished. Especially, the `transform(Object, PipelineExecutionContext)` is not active during the call to this method and never will be afterwards. Moreover, the environment is not yet `shutdown`.

      While it is encouraged that transformers are stateless, i.e. calls to `transform(Object, PipelineExecutionContext)` don't leave any traces, some special cases may need to allocate resources for performance. For example, when delegating input to an external tool, this tool may be invoked once and then the processing is delegated via its input and output channels.

    - #### transform

          Object transform​(Object object,
                           PipelineExecutionContext context)
                    throws Exception

      Applies the transformation represented by this transformer to the given object.
      Throws:
        `Exception`