GHC.Unit.Module.Status

ghc-9.10.0.20240328: The GHC API

Safe Haskell | None
Language | GHC2021

GHC.Unit.Module.Status

Synopsis

- data HscBackendAction
  - = HscUpdate ModIface
  - | HscRecomp {
    - hscs_guts :: CgGuts
    - hscs_mod_location :: !ModLocation
    - hscs_partial_iface :: !PartialModIface
    - hscs_old_iface_hash :: !(Maybe Fingerprint)
    }
- data HscRecompStatus
  - = HscUpToDate ModIface HomeModLinkable
  - | HscRecompNeeded (Maybe Fingerprint)

# Documentation

data HscBackendAction Source #

Action to perform in backend compilation

Constructors

HscUpdate ModIface | Update the boot and signature file results.
HscRecomp | Recompile this module.
Fields hscs_guts :: CgGuts Information for the code generator. hscs_mod_location :: !ModLocation Module info hscs_partial_iface :: !PartialModIface Partial interface hscs_old_iface_hash :: !(Maybe Fingerprint) Old interface hash for this compilation, if an old interface file exists. Pass to `hscMaybeWriteIface` when writing the interface to avoid updating the existing interface when the interface isn't changed.

#### Instances

Instances details

Outputable HscBackendAction Source # |
Instance details Defined in GHC.Unit.Module.Status Methods ppr :: HscBackendAction -> SDoc Source #

data HscRecompStatus Source #

Status of a module in incremental compilation

Constructors

HscUpToDate ModIface HomeModLinkable | Nothing to do because code already exists.
HscRecompNeeded (Maybe Fingerprint) | Recompilation of module, or update of interface is required. Optionally pass the old interface hash to avoid updating the existing interface when it has not changed.