## Uses of Interface
com.jnape.palatable.lambda.monad.MonadBase

- Packages that use MonadBase
  Package | Description
  --- | ---
  com.jnape.palatable.lambda.functions.specialized |
  com.jnape.palatable.lambda.monad |
  com.jnape.palatable.lambda.monad.transformer |
  com.jnape.palatable.lambda.monad.transformer.builtin |

- - ### Uses of MonadBase in com.jnape.palatable.lambda.functions.specialized

    Classes in com.jnape.palatable.lambda.functions.specialized with type parameters of type MonadBase
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Lift<B extends MonadBase<?,?,B>>` Generalized, portable lifting operation for lifting a `MonadRec` into a `MonadBase`.

    Methods in com.jnape.palatable.lambda.functions.specialized with type parameters of type MonadBase
    Modifier and Type | Method and Description
    --- | ---
    `default <A,M extends MonadRec<?,M>,MBA extends MonadBase<M,A,B>> MBA` | Lift.`apply(MonadRec<A,M> ma)`
    `static <B extends MonadBase<?,?,B>> Lift<B>` | Lift.`lift(Lift<B> lift)` Static method to aid inference.

    Methods in com.jnape.palatable.lambda.functions.specialized that return MonadBase
    Modifier and Type | Method and Description
    --- | ---
    `<A,M extends MonadRec<?,M>> MonadBase<M,A,B>` | Lift.`checkedApply(MonadRec<A,M> ga)`

  - ### Uses of MonadBase in com.jnape.palatable.lambda.monad

    Classes in com.jnape.palatable.lambda.monad with type parameters of type MonadBase
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `MonadBase<M extends MonadRec<?,M>,A,MB extends MonadBase<?,?,MB>>` A type into which a `MonadRec` is embedded whilst internally preserving the `MonadRec` structure.

    Classes in com.jnape.palatable.lambda.monad that implement MonadBase
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SafeT<M extends MonadRec<?,M>,A>` A stack-safe `monad transformer` that can safely interpret deeply nested left- or right-associated binds for any `MonadRec`.

    Methods in com.jnape.palatable.lambda.monad that return MonadBase
    Modifier and Type | Method and Description
    --- | ---
    `<C,N extends MonadRec<?,N>> MonadBase<N,C,MB>` | MonadBase.`lift(MonadRec<C,N> nc)` Lift a new argument `MonadRec` into this `MonadBase`.

  - ### Uses of MonadBase in com.jnape.palatable.lambda.monad.transformer

    Subinterfaces of MonadBase in com.jnape.palatable.lambda.monad.transformer
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `MonadT<M extends MonadRec<?,M>,A,MT extends MonadT<M,?,MT,T>,T extends MonadT<?,?,?,T>>` The generic type representing a `Monad` transformer, exposing the argument `Monad` as a type parameter.

  - ### Uses of MonadBase in com.jnape.palatable.lambda.monad.transformer.builtin

    Classes in com.jnape.palatable.lambda.monad.transformer.builtin that implement MonadBase
    Modifier and Type | Class and Description
    --- | ---
    `class` | `EitherT<M extends MonadRec<?,M>,L,R>` A `monad transformer` for `Either`.
    `class` | `IdentityT<M extends MonadRec<?,M>,A>` A `monad transformer` for `Identity`.
    `class` | `LazyT<M extends MonadRec<?,M>,A>` A `monad transformer` for `Lazy`.
    `class` | `MaybeT<M extends MonadRec<?,M>,A>` A `monad transformer` for `Maybe`.
    `class` | `ReaderT<R,M extends MonadRec<?,M>,A>` A `monad transformer` for any `function` from some type `R` to some `monadic` embedding ``MonadRec`<A, M>`.
    `class` | `StateT<S,M extends MonadRec<?,M>,A>` The `State` `monad transformer`.
    `class` | `WriterT<W,M extends MonadRec<?,M>,A>` A `monad transformer` for `Writer`.