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:
    Action.JustMutate, Action.JustTransform
    • Method Detail

      • 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.