Interface Action.Independent<S>

All Superinterfaces:
Action<S>
All Known Implementing Classes:
Action.JustMutate, Action.JustTransform
Enclosing interface:
Action<S>
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 Action.Independent<S> extends Action<S>
Implement this interface if you want to have the action's transforming behaviour not to depend on previous state.

In addition to performing a state transformation the mutator function can also check or assert post-conditions and invariants that should hold when doing the transformation.

See Also:
  • Method Details

    • transformer

      Arbitrary<Transformer<S>> transformer()
      Return an arbitrary for transformers that does not depend on the previous state.

      In addition to performing a state transformation the transforming function can also check or assert post-conditions and invariants that should hold when doing the transformation.

      Returns:
      an arbitrary of type Transformer.