aboutsummaryrefslogtreecommitdiff
path: root/frontend/typereify.dcl
blob: 292d211a801bf8f76b03b77edf5f3c23581353a0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/*
	module owner: Ronny Wichers Schreur
*/
definition module typereify

from syntax import
	::Ident, ::FunDef, ::IndexRange, ::TypeHeaps,
	::SymbolTable, ::SymbolTableEntry, ::Heap,
	::DclModule, ::CommonDefs, ::VarHeap, ::VarInfo
from predef import
	::PredefinedSymbols, ::PredefinedSymbol

addTypeFunctions :: Ident Int *{#DclModule} *{#FunDef} *CommonDefs *PredefinedSymbols *VarHeap *SymbolTable
			  -> (IndexRange, *{#DclModule},*{#FunDef},*CommonDefs,*PredefinedSymbols,*VarHeap,*SymbolTable)

buildTypeFunctions :: !Int !*{#FunDef} !{#CommonDefs} *PredefinedSymbols *VarHeap *TypeHeaps
									  -> (*{#FunDef}, *PredefinedSymbols,*VarHeap,*TypeHeaps)

sanityCheckTypeFunctions :: !Int !CommonDefs !{#DclModule} !{#FunDef}
	->	Bool