GHC.Stg.EnforceEpt.TagSig

ghc-9.14.0.20251028: The GHC API

Safe Haskell | None
Language | GHC2021

GHC.Stg.EnforceEpt.TagSig

Synopsis

- type StgCgInfos = NameEnv TagSig
- newtype TagSig = TagSig TagInfo
- data TagInfo
  - = TagDunno
  - | TagTuple [TagInfo]
  - | TagProper
  - | TagTagged
- isTaggedSig :: TagSig -> Bool
- seqTagSig :: TagSig -> ()
- seqTagInfo :: TagInfo -> ()

# Documentation

type StgCgInfos = NameEnv TagSig Source #

Information to be exposed in interface files which is produced by the stg2stg passes.

newtype TagSig Source #

Constructors

TagSig TagInfo |

#### Instances

Instances details

Binary TagSig Source # |
Instance details Defined in GHC.Stg.EnforceEpt.TagSig Methods put_ :: WriteBinHandle -> TagSig -> IO () Source # put :: WriteBinHandle -> TagSig -> IO (Bin TagSig) Source # get :: ReadBinHandle -> IO TagSig Source #
Outputable TagSig Source # |
Instance details Defined in GHC.Stg.EnforceEpt.TagSig Methods ppr :: TagSig -> SDoc Source #
Eq TagSig Source # |
Instance details Defined in GHC.Stg.EnforceEpt.TagSig Methods (==) :: TagSig -> TagSig -> Bool Source # (/=) :: TagSig -> TagSig -> Bool Source #
OutputableBndr (Id, TagSig) Source # |
Instance details Defined in GHC.Stg.EnforceEpt.TagSig Methods pprBndr :: BindingSite -> (Id, TagSig) -> SDoc Source # pprPrefixOcc :: (Id, TagSig) -> SDoc Source # pprInfixOcc :: (Id, TagSig) -> SDoc Source # bndrIsJoin_maybe :: (Id, TagSig) -> JoinPointHood Source #

data TagInfo Source #

Constructors

TagDunno |
TagTuple [TagInfo] |
TagProper |
TagTagged |

#### Instances

Instances details

Binary TagInfo Source # |
Instance details Defined in GHC.Stg.EnforceEpt.TagSig Methods put_ :: WriteBinHandle -> TagInfo -> IO () Source # put :: WriteBinHandle -> TagInfo -> IO (Bin TagInfo) Source # get :: ReadBinHandle -> IO TagInfo Source #
Outputable TagInfo Source # |
Instance details Defined in GHC.Stg.EnforceEpt.TagSig Methods ppr :: TagInfo -> SDoc Source #
Eq TagInfo Source # |
Instance details Defined in GHC.Stg.EnforceEpt.TagSig Methods (==) :: TagInfo -> TagInfo -> Bool Source # (/=) :: TagInfo -> TagInfo -> Bool Source #

isTaggedSig :: TagSig -> Bool Source #

seqTagSig :: TagSig -> () Source #

seqTagInfo :: TagInfo -> () Source #