HORIZON HASKELLDocslts/ghc-9.10.xc74966e2026-09-27Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27

Modulevinyl-0.14.3Haskell2010

Data.Vinyl.Derived

Commonly used Rec instantiations.

  • 9 types
  • 2 classes
  • 19 values
  • Packagevinyl-0.14.3
  • Exports32
  • LanguageHaskell2010
  • LicenceMIT
  • SourceDerived.hs
typetype (:::) (a :: k) (b :: k1) = '(a, b)
#

Alias for Field spec

typetype HList = Rec Identity
#

Heterogeneous list whose elements are evaluated during list construction.

typetype LazyHList = Rec Thunk
#

Heterogeneous list whose elements are left as-is during list construction (cf. HList).

value(=:) :: KnownSymbol l => Label l -> v -> ElField (l ::: v)
#

Operator for creating an ElField. With the -XOverloadedLabels extension, this permits usage such as, #foo =: 23 to produce a value of type ElField ("foo" ::: Int).

datadata SField (field :: k)
#

A proxy for field types.

Instances3Eq, Ord, Show
  • Eq (SField a)Defined in vinyl-0.14.3 · Data.Vinyl.Derived
  • Ord (SField a)Defined in vinyl-0.14.3 · Data.Vinyl.Derived
  • KnownSymbol s => Show (SField '(s, t))Defined in vinyl-0.14.3 · Data.Vinyl.Derived
typetype HasField (record :: ((k, k1) -> Type) -> [(k, k1)] -> Type) (l :: k) (fs :: [(k, k1)]) (fs' :: [(k, k1)]) (v :: k1) (v' :: k1) = (RecElem record (l ::: v) (l ::: v') fs fs' (RIndex (l ::: v) fs), FieldType l fs ~ v, FieldType l fs' ~ v')
#

Constraint that a label is associated with a particular type in a record.

datadata Label (a :: Symbol)
#

Proxy for label type

Instances3IsLabel, Eq, Show
  • s ~ s' => IsLabel s (Label s')Defined in vinyl-0.14.3 · Data.Vinyl.Derived
  • Eq (Label a)Defined in vinyl-0.14.3 · Data.Vinyl.Derived
  • Show (Label a)Defined in vinyl-0.14.3 · Data.Vinyl.Derived
familytype family Unlabeled (ts :: [(k, a)]) :: [a] where
#

Remove the first component (e.g. the label) from a type-level list of pairs.

Equations

classclass StripFieldNames (ts :: [(Symbol, Type)]) where
#

Facilities for removing and replacing the type-level label, or column name, part of a record.

Instances2StripFieldNames

Specializations for working with an ARec of named fields.

0 declarations