Tst.hs

module Tst where
import HsIdent
import QualNames
import UniqueNames
import Ents
import HasBaseName
import TypedIds
{-
impenv ::
         (HasBaseName n ib1,
           Unique n,
           QualNames qn m n1,
           HasBaseName qn ib) =>
          [(n1, Ent n)] -> [(HsIdentI (PN ib), TypedIds.IdTy (PN ib1))]
-}
impenv exprel =
    [(origIdent (mkUnqual n) m i,origt m t)|(n,Ent m i t)<-exprel]
    --`asTypeOf` (undefined::FiniteMap (HsIdentI qn) [(HsIdentI n,IdTy n)])
  where 
    origt m = fmap (osub m) 
    osub m n = origName n m n

origIdent qn m = mapHsIdent (origName qn m)
origName qn m n = PN (getBaseName qn) (unique m n)

Plain-text version of Tst.hs | Valid HTML?