strongweak-0.11.0: Convert between strong and weak representations of types
Safe HaskellNone
LanguageGHC2021

Strongweak.WeakenN.Internal

Description

WeakenN internals.

Just in case. You shouldn't need these, but they might be fun to look at.

Internal module. Exports may change without warning. Try not to use.

Synopsis

Documentation

class WeakenWeakenN (n :: Natural) a where Source #

Methods

weakenWeakenN :: a -> WeakenedN n a Source #

Instances

Instances details
(Weaken a, WeakenWeakenN (n - 1) (Weakened a)) => WeakenWeakenN n a Source #

Inductive case. n /= 0, else this explodes.

Instance details

Defined in Strongweak.WeakenN.Internal

Methods

weakenWeakenN :: a -> WeakenedN n a Source #

WeakenWeakenN 0 a Source #

Zero case: return the value as-is.

Instance details

Defined in Strongweak.WeakenN.Internal

Methods

weakenWeakenN :: a -> WeakenedN 0 a Source #

weakenedNRL1 :: forall (n :: Natural) a. WeakenedN (n - 1) (Weakened a) -> WeakenedN n a Source #

Inverted inductive WeakenedNcase.

n must not be 0.

weakenedNLR1 :: forall (n :: Natural) a. WeakenedN n a -> WeakenedN (n - 1) (Weakened a) Source #

Inductive WeakenedNcase.

n must not be 0.