## Uses of Class
com.jnape.palatable.lambda.functor.builtin.Tagged

- Packages that use Tagged
  Package | Description
  --- | ---
  com.jnape.palatable.lambda.functor.builtin |
  com.jnape.palatable.lambda.optics.functions |

- - ### Uses of Tagged in com.jnape.palatable.lambda.functor.builtin

    Methods in com.jnape.palatable.lambda.functor.builtin with type parameters of type Tagged
    Modifier and Type | Method and Description
    --- | ---
    `<C,App extends Applicative<?,App>,TravC extends Traversable<C,Tagged<S,?>>,AppTrav extends Applicative<TravC,App>> AppTrav` | Tagged.`traverse(Fn1<? super B,? extends Applicative<C,App>> fn, Fn1<? super TravC,? extends AppTrav> pure)` Apply `fn` to each element of this traversable from left to right, and collapse the results into a single resulting applicative, potentially with the assistance of the applicative's pure function.

    Methods in com.jnape.palatable.lambda.functor.builtin that return Tagged
    Modifier and Type | Method and Description
    --- | ---
    `<C> Tagged<Choice2<C,S>,Choice2<C,B>>` | Tagged.`cocartesian()` Choose some type `C` or this profunctor's carrier types.
    `<Z> Tagged<Z,B>` | Tagged.`contraMap(Fn1<? super Z,? extends S> fn)` Contravariantly map `A <- B`.
    `<Z,C> Tagged<Z,C>` | Tagged.`diMap(Fn1<? super Z,? extends S> lFn, Fn1<? super B,? extends C> rFn)` Dually map contravariantly over the left parameter and covariantly over the right parameter.
    `<Z> Tagged<Z,B>` | Tagged.`diMapL(Fn1<? super Z,? extends S> fn)` Contravariantly map over the left parameter.
    `<C> Tagged<S,C>` | Tagged.`diMapR(Fn1<? super B,? extends C> fn)` Covariantly map over the right parameter.
    `<C> Tagged<S,C>` | Tagged.`discardL(Applicative<C,Tagged<S,?>> appB)` Sequence both this `Applicative` and `appB`, discarding this `Applicative's` result and returning `appB`.
    `<C> Tagged<S,B>` | Tagged.`discardR(Applicative<C,Tagged<S,?>> appB)` Sequence both this `Applicative` and `appB`, discarding `appB's` result and returning this `Applicative`.
    `<C> Tagged<S,C>` | Tagged.`flatMap(Fn1<? super B,? extends Monad<C,Tagged<S,?>>> f)` Chain dependent computations that may continue or short-circuit based on previous results.
    `<C> Tagged<S,C>` | Tagged.`fmap(Fn1<? super B,? extends C> fn)` Covariantly transmute this functor's parameter using the given mapping function.
    `<C> Tagged<S,C>` | Tagged.`pure(C c)` Lift the value `b` into this applicative functor.
    `<C> Tagged<S,C>` | Tagged.`trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,Tagged<S,?>>> fn)` Given some operation yielding a `RecursiveResult` inside this `MonadRec`, internally trampoline the operation until it yields a `termination` instruction.
    `<C> Tagged<S,C>` | Tagged.`zip(Applicative<Fn1<? super B,? extends C>,Tagged<S,?>> appFn)` Given another instance of this applicative over a mapping function, "zip" the two instances together using whatever application semantics the current applicative supports.

    Methods in com.jnape.palatable.lambda.functor.builtin that return types with arguments of type Tagged
    Modifier and Type | Method and Description
    --- | ---
    `static <S> Pure<Tagged<S,?>>` | Tagged.`pureTagged()` The canonical `Pure` instance for `Tagged`.

    Method parameters in com.jnape.palatable.lambda.functor.builtin with type arguments of type Tagged
    Modifier and Type | Method and Description
    --- | ---
    `<C> Tagged<S,C>` | Tagged.`discardL(Applicative<C,Tagged<S,?>> appB)` Sequence both this `Applicative` and `appB`, discarding this `Applicative's` result and returning `appB`.
    `<C> Tagged<S,B>` | Tagged.`discardR(Applicative<C,Tagged<S,?>> appB)` Sequence both this `Applicative` and `appB`, discarding `appB's` result and returning this `Applicative`.
    `<C> Tagged<S,C>` | Tagged.`flatMap(Fn1<? super B,? extends Monad<C,Tagged<S,?>>> f)` Chain dependent computations that may continue or short-circuit based on previous results.
    `<C> Tagged<S,C>` | Tagged.`trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,Tagged<S,?>>> fn)` Given some operation yielding a `RecursiveResult` inside this `MonadRec`, internally trampoline the operation until it yields a `termination` instruction.
    `<C> Tagged<S,C>` | Tagged.`zip(Applicative<Fn1<? super B,? extends C>,Tagged<S,?>> appFn)` Given another instance of this applicative over a mapping function, "zip" the two instances together using whatever application semantics the current applicative supports.

  - ### Uses of Tagged in com.jnape.palatable.lambda.optics.functions

    Method parameters in com.jnape.palatable.lambda.optics.functions with type arguments of type Tagged
    Modifier and Type | Method and Description
    --- | ---
    `Optic<Profunctor<?,?,?>,Const<T,?>,B,B,T,T>` | Re.`checkedApply(Optic<? super Tagged<?,?>,? super Identity<?>,S,T,A,B> optic)`
    `static <S,T,A,B> Optic<Profunctor<?,?,?>,Const<T,?>,B,B,T,T>` | Re.`re(Optic<? super Tagged<?,?>,? super Identity<?>,S,T,A,B> optic)`