Safe Haskell | None |
---|---|
Language | Haskell2010 |
- type FieldLabelString = FastString
- type FieldLabelEnv = DFastStringEnv FieldLabel
- data FieldLbl a = FieldLabel {
- flLabel :: FieldLabelString
- flIsOverloaded :: Bool
- flSelector :: a
- type FieldLabel = FieldLbl Name
- mkFieldLabelOccs :: FieldLabelString -> OccName -> Bool -> FieldLbl OccName
Documentation
type FieldLabelString = FastString Source #
Field labels are just represented as strings; they are not necessarily unique (even within a module)
type FieldLabelEnv = DFastStringEnv FieldLabel Source #
A map from labels to all the auxiliary information
Fields in an algebraic record type
FieldLabel | |
|
type FieldLabel = FieldLbl Name Source #
mkFieldLabelOccs :: FieldLabelString -> OccName -> Bool -> FieldLbl OccName Source #
Record selector OccNames are built from the underlying field name and the name of the first data constructor of the type, to support duplicate record field names. See Note [Why selector names include data constructors].