Hi devs,

Is it possible to programmatically recover the role of a type variable?

Or, possibly, a list of the roles of the type variables from left to right?

For example, if i have:

data Foo a = Foo (1)
newtype Bar a b = Bar (a -> b) (1)

Getting the role list of (1) would give me [Phantom], and (2) would give me
[Representational, Representational].

I know in compiler/types/TyCon.hs that TyCon has a list of Roles in it, but
there doesn't seem to be any machinery available to do this in source
haskell.

Thanks
_______________________________________________
ghc-devs mailing list
[email protected]
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to