HORIZON HASKELLDocslts/ghc-10.0.x8fef28d2026-11-02Search packagesCtrl K
Theme: |

GHC 10.0.0.20260917 · lts/ghc-10.0.x · 8fef28d · 2026-11-02

Modulevinyl-0.14.3Haskell2010

Data.Vinyl.TypeLevel

Synopsis
  • Packagevinyl-0.14.3
  • Exports17
  • LanguageHaskell2010
  • LicenceMIT
  • SourceTypeLevel.hs
datadata Nat

A mere approximation of the natural numbers. And their image as lifted by -XDataKinds corresponds to the actual natural numbers.

Constructors

Instances4RecSubset, IndexWitnesses
familytype family Fst (a :: (k1, k2)) :: k1 where

Project the first component of a type-level tuple.

Equations

  • Fst '(x, y) = x
familytype family Snd (a :: (k1, k2)) :: k2 where

Project the second component of a type-level tuple.

Equations

  • Snd '(x, y) = y
familytype family RIndex (r :: k) (rs :: [k]) :: Nat where

A partial relation that gives the index of a value in a list.

Equations

familytype family RImage (rs :: [k]) (ss :: [k]) :: [Nat] where

A partial relation that gives the indices of a sublist in a larger list.

Equations

familytype family RDelete (r :: a) (rs :: [a]) :: [a] where

Remove the first occurrence of a type from a type-level list.

Equations

familytype family (++) (as :: [k]) (bs :: [k]) :: [k] where

Append for type-level lists.

Equations

  • (++) '[] bs = bs
  • (++) (a ': as) bs = a ': as ++ bs
classclass AllSatisfied (cs :: k) (t :: k1)

Constraint that each Constraint in a type-level list is satisfied by a particular type.

Instances2AllSatisfied
familytype family AllAllSat (cs :: k) (ts :: [k1]) :: Constraint where

Constraint that all types in a type-level list satisfy each constraint from a list of constraints.

AllAllSat cs ts should be equivalent to AllConstrained (AllSatisfied cs) ts if partial application of type families were legal.

Equations

familytype family ApplyToField (t :: Type -> Type) (a :: k1) :: k1 where

Apply a type constructor to a record index. Record indexes are either Type or (Symbol, Type). In the latter case, the type constructor is applied to the second component of the tuple.

Equations

classclass Coercible (f x) (g x) => Similar (f :: k1 -> k) (g :: k1 -> k) (x :: k1)

This class is used for consMatchCoercion with older versions of GHC.

Instances1Similar
  • Coercible (f x) (g x) => Similar f g xDefined in vinyl-0.14.3 · Data.Vinyl.TypeLevel