Package cs2030s.fp

## Class Actually<T>

- java.lang.Object
- - cs2030s.fp.Actually<T>

- All Implemented Interfaces:
    `Actionable<T>`, `Immutatorable<T>`
  Direct Known Subclasses:
    `Actually.Failure`, `Actually.Success`

      public abstract class Actually<T>
      extends java.lang.Object
      implements Immutatorable<T>, Actionable<T>

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `private static class` | `Actually.Failure` |
    `private static class` | `Actually.Success<T>` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Actually()` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <T> Actually<T>` | `err​(java.lang.Exception e)` |
    `abstract <U extends T> T` | `except​(Constant<? extends U> c)` |
    `abstract void` | `finish​(Action<? super T> action)` |
    `abstract <R> Actually<R>` | `next​(Immutator<? extends Actually<? extends R>,​? super T> immutator)` |
    `static <T> Actually<T>` | `ok​(T value)` |
    `abstract <U extends T> T` | `unless​(U other)` |
    `abstract T` | `unwrap()` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface cs2030s.fp.Actionable

      `act`

    - ### Methods inherited from interface cs2030s.fp.Immutatorable

      `transform`

- - ### Constructor Detail

    - #### Actually

          public Actually()

  - ### Method Detail

    - #### ok

          public static <T> Actually<T> ok​(T value)

    - #### err

          public static <T> Actually<T> err​(java.lang.Exception e)

    - #### unwrap

          public abstract T unwrap()
                            throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### except

          public abstract <U extends T> T except​(Constant<? extends U> c)

    - #### finish

          public abstract void finish​(Action<? super T> action)

    - #### unless

          public abstract <U extends T> T unless​(U other)

    - #### next

          public abstract <R> Actually<R> next​(Immutator<? extends Actually<? extends R>,​? super T> immutator)