large-records-0.1.0.0: Efficient compilation for large records, linear in the size of the record
Safe HaskellNone
LanguageHaskell2010

Data.Record.TH.Runtime

Description

Functions to support the TH code (i.e., functions called by generated code)

NOTE: We leave the generic representation type as lazy, and only force values once we translate back to the type itself. This means that we can chain generic functions and get some kind of fusion without having to traverse records multiple times.

Synopsis

Miscellaneous

dictFor :: c x => Proxy c -> Proxy x -> Dict c x Source #

noInlineUnsafeCo :: forall a b. a -> b Source #

Avoid potential segfault with ghc < 9.0

See https://gitlab.haskell.org/ghc/ghc/-/issues/16893. I haven't actually seen this fail in large-records, but we saw it fail in the compact representation branch of sop-core, and what we do here is not so different, so better to play it safe.