ghc-9.6.3: The GHC API

Safe Haskell | Safe-Inferred
Language | Haskell2010

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.