type_io.dcl 754 Bytes
Newer Older
1
2
3
/*
	module owner: Martijn Vervoort
*/
4
5
definition module type_io

Martijn Vervoort's avatar
Martijn Vervoort committed
6
7
8
9
// WARNING: It is essential to report changes in this module to martijnv@cs.kun.nl
//			because the binary format for type-files is used by the dynamic run-time
//			system.

10
11
12
13
import scanner, general, Heap, typeproperties, utilities, checksupport

import StdEnv

14
15
16
17
18
19
:: WriteTypeInfoState
	= { 
		wtis_type_heaps			:: !.TypeHeaps
	,	wtis_n_type_vars		:: !Int
	};

20
21
class WriteTypeInfo a 
where
22
	write_type_info :: a !*File !*WriteTypeInfoState -> (!*File,!*WriteTypeInfoState)
23
	
Martijn Vervoort's avatar
Martijn Vervoort committed
24
instance WriteTypeInfo CommonDefs, Char, [a] | WriteTypeInfo a
25

26
/*2.0
27
instance WriteTypeInfo {#b} | Array {#} b & WriteTypeInfo b 
28
29
0.2*/

30
31
32
33
//1.3
instance WriteTypeInfo {#b} | select_u, size_u, WriteTypeInfo b 
//3.1