Safe Haskell | None |
---|---|

Language | Haskell2010 |

ByteCodeLink: Bytecode assembler and linker

## Synopsis

- assembleBCOs :: HscEnv -> [ProtoBCO Name] -> [TyCon] -> [RemotePtr ()] -> Maybe ModBreaks -> IO CompiledByteCode
- assembleOneBCO :: HscEnv -> ProtoBCO Name -> IO UnlinkedBCO
- bcoFreeNames :: UnlinkedBCO -> UniqDSet Name
- data SizedSeq a
- sizeSS :: SizedSeq a -> Word
- ssElts :: SizedSeq a -> [a]
- iNTERP_STACK_CHECK_THRESH :: Int

# Documentation

assembleBCOs :: HscEnv -> [ProtoBCO Name] -> [TyCon] -> [RemotePtr ()] -> Maybe ModBreaks -> IO CompiledByteCode Source #

assembleOneBCO :: HscEnv -> ProtoBCO Name -> IO UnlinkedBCO Source #

bcoFreeNames :: UnlinkedBCO -> UniqDSet Name Source #

Finds external references. Remember to remove the names defined by this group of BCOs themselves

## Instances

Functor SizedSeq | |

Foldable SizedSeq | |

Defined in SizedSeq fold :: Monoid m => SizedSeq m -> m # foldMap :: Monoid m => (a -> m) -> SizedSeq a -> m # foldr :: (a -> b -> b) -> b -> SizedSeq a -> b # foldr' :: (a -> b -> b) -> b -> SizedSeq a -> b # foldl :: (b -> a -> b) -> b -> SizedSeq a -> b # foldl' :: (b -> a -> b) -> b -> SizedSeq a -> b # foldr1 :: (a -> a -> a) -> SizedSeq a -> a # foldl1 :: (a -> a -> a) -> SizedSeq a -> a # elem :: Eq a => a -> SizedSeq a -> Bool # maximum :: Ord a => SizedSeq a -> a # minimum :: Ord a => SizedSeq a -> a # | |

Traversable SizedSeq | |

Show a => Show (SizedSeq a) | |

Generic (SizedSeq a) | |

Binary a => Binary (SizedSeq a) | |

NFData a => NFData (SizedSeq a) | |

type Rep (SizedSeq a) | |

Defined in SizedSeq type Rep (SizedSeq a) = D1 (MetaData "SizedSeq" "SizedSeq" "ghc-lib-parser-0.20190523-K2nEdaPRG7yHCAzNH0mSmD" False) (C1 (MetaCons "SizedSeq" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) SourceUnpack SourceStrict DecidedStrict) (Rec0 Word) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [a]))) |