ghci-9.8.0.20230727: The library supporting GHC's interactive interpreter
Safe HaskellNone
LanguageHaskell2010

GHCi.ResolvedBCO

Synopsis

Documentation

data ResolvedBCO Source #

A ResolvedBCO is one in which all the Name references have been resolved to actual addresses or RemoteHValues.

Note, all arrays are zero-indexed (we assume this when serializing/deserializing)

Instances

Instances details
Generic ResolvedBCO Source # 
Instance details

Defined in GHCi.ResolvedBCO

Associated Types

type Rep ResolvedBCO 
Instance details

Defined in GHCi.ResolvedBCO

type Rep ResolvedBCO = D1 ('MetaData "ResolvedBCO" "GHCi.ResolvedBCO" "ghci-9.8.0.20230727-eebd" 'False) (C1 ('MetaCons "ResolvedBCO" 'PrefixI 'True) ((S1 ('MetaSel ('Just "resolvedBCOIsLE") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "resolvedBCOArity") 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "resolvedBCOInstrs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (UArray Int Word16)))) :*: (S1 ('MetaSel ('Just "resolvedBCOBitmap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (UArray Int Word64)) :*: (S1 ('MetaSel ('Just "resolvedBCOLits") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (UArray Int Word64)) :*: S1 ('MetaSel ('Just "resolvedBCOPtrs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (SizedSeq ResolvedBCOPtr))))))
Show ResolvedBCO Source # 
Instance details

Defined in GHCi.ResolvedBCO

Binary ResolvedBCO Source #

The Binary instance for ResolvedBCOs.

Note, that we do encode the endianness, however there is no support for mixed endianness setups. This is primarily to ensure that ghc and iserv share the same endianness.

Instance details

Defined in GHCi.ResolvedBCO

type Rep ResolvedBCO Source # 
Instance details

Defined in GHCi.ResolvedBCO

type Rep ResolvedBCO = D1 ('MetaData "ResolvedBCO" "GHCi.ResolvedBCO" "ghci-9.8.0.20230727-eebd" 'False) (C1 ('MetaCons "ResolvedBCO" 'PrefixI 'True) ((S1 ('MetaSel ('Just "resolvedBCOIsLE") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "resolvedBCOArity") 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "resolvedBCOInstrs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (UArray Int Word16)))) :*: (S1 ('MetaSel ('Just "resolvedBCOBitmap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (UArray Int Word64)) :*: (S1 ('MetaSel ('Just "resolvedBCOLits") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (UArray Int Word64)) :*: S1 ('MetaSel ('Just "resolvedBCOPtrs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (SizedSeq ResolvedBCOPtr))))))

data ResolvedBCOPtr Source #

Constructors

ResolvedBCORef !Int

reference to the Nth BCO in the current set

ResolvedBCOPtr !(RemoteRef HValue)

reference to a previously created BCO

ResolvedBCOStaticPtr !(RemotePtr ())

reference to a static ptr

ResolvedBCOPtrBCO ResolvedBCO

a nested BCO

ResolvedBCOPtrBreakArray !(RemoteRef BreakArray)

Resolves to the MutableArray# inside the BreakArray

Instances

Instances details
Generic ResolvedBCOPtr Source # 
Instance details

Defined in GHCi.ResolvedBCO

Associated Types

type Rep ResolvedBCOPtr 
Instance details

Defined in GHCi.ResolvedBCO

type Rep ResolvedBCOPtr = D1 ('MetaData "ResolvedBCOPtr" "GHCi.ResolvedBCO" "ghci-9.8.0.20230727-eebd" 'False) ((C1 ('MetaCons "ResolvedBCORef" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 Int)) :+: C1 ('MetaCons "ResolvedBCOPtr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 (RemoteRef HValue)))) :+: (C1 ('MetaCons "ResolvedBCOStaticPtr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 (RemotePtr ()))) :+: (C1 ('MetaCons "ResolvedBCOPtrBCO" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ResolvedBCO)) :+: C1 ('MetaCons "ResolvedBCOPtrBreakArray" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 (RemoteRef BreakArray))))))
Show ResolvedBCOPtr Source # 
Instance details

Defined in GHCi.ResolvedBCO

Binary ResolvedBCOPtr Source # 
Instance details

Defined in GHCi.ResolvedBCO

type Rep ResolvedBCOPtr Source # 
Instance details

Defined in GHCi.ResolvedBCO

type Rep ResolvedBCOPtr = D1 ('MetaData "ResolvedBCOPtr" "GHCi.ResolvedBCO" "ghci-9.8.0.20230727-eebd" 'False) ((C1 ('MetaCons "ResolvedBCORef" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 Int)) :+: C1 ('MetaCons "ResolvedBCOPtr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 (RemoteRef HValue)))) :+: (C1 ('MetaCons "ResolvedBCOStaticPtr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 (RemotePtr ()))) :+: (C1 ('MetaCons "ResolvedBCOPtrBCO" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ResolvedBCO)) :+: C1 ('MetaCons "ResolvedBCOPtrBreakArray" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 (RemoteRef BreakArray))))))