| Safe Haskell | None |
|---|---|
| Language | Haskell98 |
Language.Haskell.Liquid.Bare.Lookup
Contents
- class Symbolic a => GhcLookup a where
- lookupGhcThing :: (GhcLookup a, PPrint b) => String -> (TyThing -> Maybe b) -> Maybe NameSpace -> a -> BareM b
- lookupGhcVar :: GhcLookup a => a -> BareM Var
- lookupGhcTyCon :: GhcLookup a => String -> a -> BareM TyCon
- lookupGhcDataCon :: Located Symbol -> BareM DataCon
Documentation
class Symbolic a => GhcLookup a where Source #
Querying GHC for Id, Type, Class, Con etc. --------------------------------
Minimal complete definition
lookupGhcThing :: (GhcLookup a, PPrint b) => String -> (TyThing -> Maybe b) -> Maybe NameSpace -> a -> BareM b Source #
lookupGhcVar :: GhcLookup a => a -> BareM Var Source #
It's possible that we have already resolved the Name we are looking for,
but have had to turn it back into a String, e.g. to be used in an Expr,
as in {v:Ordering | v = EQ}. In this case, the fully-qualified Name
(GHC.Types.EQ) will likely not be in scope, so we store our own mapping of
fully-qualified Names to Vars and prefer pulling Vars from it.