diff options
author | johnvg | 2010-02-05 13:37:42 +0000 |
---|---|---|
committer | johnvg | 2010-02-05 13:37:42 +0000 |
commit | 230bf72b9ab3e4c6d572be193680037c64b7bf02 (patch) | |
tree | 62cf8e414277aede9a42da7ab92e4e8d2c17961e /frontend/syntax.dcl | |
parent | make local build_ functions global (diff) |
add optimizations for generic bimap,
add bimap instances for standard generic types to compiler
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1764 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend/syntax.dcl')
-rw-r--r-- | frontend/syntax.dcl | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/frontend/syntax.dcl b/frontend/syntax.dcl index b182073..a73ab4d 100644 --- a/frontend/syntax.dcl +++ b/frontend/syntax.dcl @@ -530,24 +530,25 @@ NoGlobalIndex :== {gi_module=NoIndex,gi_index=NoIndex} , tdi_gen_rep :: !Optional GenericTypeRep } -// AA.. // type structure is used to specialize a generic to a type :: GenTypeStruct = GTSAppCons TypeKind [GenTypeStruct] | GTSAppVar TypeVar [GenTypeStruct] | GTSVar TypeVar - | GTSArrow GenTypeStruct GenTypeStruct // needed for simplifying bimaps - | GTSAppConsBimapKindConst // needed for simplifying bimaps | GTSCons DefinedSymbol GenTypeStruct | GTSField DefinedSymbol GenTypeStruct | GTSObject DefinedSymbol GenTypeStruct | GTSE + | GTSArrow GenTypeStruct GenTypeStruct // for optimizing bimaps + | GTSAppConsBimapKindConst // for optimizing bimaps + | GTSAppBimap TypeKind [GenTypeStruct] // for optimizing bimaps + | GTSPair !GenTypeStruct !GenTypeStruct // for optimizing bimaps + | GTSEither !GenTypeStruct !GenTypeStruct // for optimizing bimaps :: GenericTypeRep = { gtr_type :: GenTypeStruct // generic structure type , gtr_iso :: DefinedSymbol // the conversion isomorphism } -// ..AA :: TypeDefInfos :== {# .{# TypeDefInfo}} |