liquidhaskell-boot-0.9.2.5.0: Liquid Types for Haskell
Safe HaskellSafe-Inferred
LanguageHaskell98

Liquid.GHC.API.StableModule

Synopsis

Documentation

data StableModule Source #

A newtype wrapper around a Module which:

  • Allows a Module to be serialised (i.e. it has a Binary instance)
  • It tries to use stable comparison and equality under the hood.

Instances

Instances details
Generic StableModule Source # 
Instance details

Defined in Liquid.GHC.API.StableModule

Associated Types

type Rep StableModule :: Type -> Type #

Show StableModule Source # 
Instance details

Defined in Liquid.GHC.API.StableModule

Binary StableModule Source # 
Instance details

Defined in Liquid.GHC.API.StableModule

Eq StableModule Source # 
Instance details

Defined in Liquid.GHC.API.StableModule

Ord StableModule Source # 
Instance details

Defined in Liquid.GHC.API.StableModule

Hashable StableModule Source # 
Instance details

Defined in Liquid.GHC.API.StableModule

type Rep StableModule Source # 
Instance details

Defined in Liquid.GHC.API.StableModule

type Rep StableModule = D1 ('MetaData "StableModule" "Liquid.GHC.API.StableModule" "liquidhaskell-boot-0.9.2.5.0-JuBNLAGIRFD6ItsPyAO3oF" 'True) (C1 ('MetaCons "StableModule" 'PrefixI 'True) (S1 ('MetaSel ('Just "unStableModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Module)))

Constructing a StableModule

mkStableModule :: UnitId -> ModuleName -> StableModule Source #

Creates a new StableModule out of a ModuleName and a UnitId.

Converting a StableModule into a standard Module

Utility functions

toStableModule :: Module -> StableModule Source #

Converts a Module into a StableModule.

Orphan instances

Hashable ModuleName Source # 
Instance details