Package owl.run.modules
Interface Transformer
-
- All Superinterfaces:
OwlModule
- All Known Implementing Classes:
ImplicitMinimizeTransformer,RabinDegeneralization,SimplifierTransformer,Transformers.SimpleTransformer
- 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 Transformer extends OwlModule
Transformers are the central pieces of the pipeline concept. They should be used for any non-trivial mutation of objects. Typical instantiations are, for example, LTL to Automaton translators, optimization steps, etc. Aside from these tasks, pseudo-transformers can be used to provide insight into the progress of the pipeline by appending meta information to the context.Implementation notes: It is strongly encouraged to design transformers in a stateless fashion, since it allows for easy parallelism. As parallel processing is a central design concept, the
transformmethod must support parallel calls, even if there is some state involved. Should synchronization be costly, the implementation can enable it based onEnvironment.parallel().
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceTransformer.Instance
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Transformer.Instancecreate(Environment environment)
-
-
-
Method Detail
-
create
Transformer.Instance create(Environment environment)
-
-