%{ #include "hspincl.h" %} %{{ module U_ttype where #include "HsVersions.h" import UgenUtil import U_list import U_qid %}} type ttype; tname : < gtypeid : qid; >; /* tycon */ namedtvar : < gnamedtvar : stringId; >; /* tvar */ tllist : < gtlist : ttype; >; ttuple : < gttuple : list; >; tutuple : < gtutuple : list; >; tfun : < gtin : ttype; gtout : ttype; >; tapp : < gtapp : ttype; gtarg : ttype; >; tbang : < gtbang : ttype; >; forall : < gtforalltv : list; /* tyvars */ gtforallctxt : list; /* theta */ gtforallt : ttype; >; end;