annotate Mac/Lib/pythonprefs.py @ 25838:8540887bcec6 2.2

Backport of 2.183: Fix memory leak in add_subclass() found by NealN with valgrind.
author Guido van Rossum <guido@python.org>
date Fri, 18 Oct 2002 13:42:21 +0000
parents f4af27cb2632
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
1 from preferences import *
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
2
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
3 # Names of Python resources
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
4 PREFNAME_NAME="PythonPreferenceFileName"
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
5
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
6 # Resource IDs in the preferences file
7032
fa85a7fd740b I give in. Now Tk is also using resources just above 128, so Python
Jack Jansen <jack.jansen@cwi.nl>
parents: 7029
diff changeset
7 PATH_ID = 228
fa85a7fd740b I give in. Now Tk is also using resources just above 128, so Python
Jack Jansen <jack.jansen@cwi.nl>
parents: 7029
diff changeset
8 DIR_ID = 228
fa85a7fd740b I give in. Now Tk is also using resources just above 128, so Python
Jack Jansen <jack.jansen@cwi.nl>
parents: 7029
diff changeset
9 POPT_ID = 228
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
10 GUSI_ID = 10240
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
11
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
12 # Override IDs (in the applet)
7032
fa85a7fd740b I give in. Now Tk is also using resources just above 128, so Python
Jack Jansen <jack.jansen@cwi.nl>
parents: 7029
diff changeset
13 OVERRIDE_PATH_ID = 229
fa85a7fd740b I give in. Now Tk is also using resources just above 128, so Python
Jack Jansen <jack.jansen@cwi.nl>
parents: 7029
diff changeset
14 OVERRIDE_DIR_ID = 229
fa85a7fd740b I give in. Now Tk is also using resources just above 128, so Python
Jack Jansen <jack.jansen@cwi.nl>
parents: 7029
diff changeset
15 OVERRIDE_POPT_ID = 229
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
16 OVERRIDE_GUSI_ID = 10241
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
17
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
18 # version
19640
f4af27cb2632 Added preferences/startup options for division warning
Jack Jansen <jack.jansen@cwi.nl>
parents: 16557
diff changeset
19 CUR_VERSION=8
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
20
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
21 preffilename = PstringLoader(AnyResLoader('STR ', resname=PREFNAME_NAME)).load()
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
22 pref_fss = preferencefile(preffilename, 'Pyth', 'pref')
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
23
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
24 class PoptLoader(VersionLoader):
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
25 def __init__(self, loader):
19640
f4af27cb2632 Added preferences/startup options for division warning
Jack Jansen <jack.jansen@cwi.nl>
parents: 16557
diff changeset
26 VersionLoader.__init__(self, "bbbbbbbbbbbbbbbb", loader)
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
27
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
28 def versioncheck(self, data):
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
29 if data[0] == CUR_VERSION:
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
30 return data
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
31 print 'old resource'
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
32 raise Error, "old resource"
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
33
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
34 class GusiLoader:
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
35 def __init__(self, loader):
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
36 self.loader = loader
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
37 self.data = None
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
38
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
39 def load(self):
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
40 self.data = self.loader.load()
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
41 while self.data[10:14] != '0181':
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
42 self.loader.delete(1)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
43 self.loader.load()
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
44 tp = self.data[0:4]
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
45 cr = self.data[4:8]
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
46 flags = ord(self.data[9])
16557
9ce9e0342cc1 Bit the bullet and added a private GUSISIOUX for Python. This makes the delayconsole and keepopen code neater. Also tells Sioux to behave better with events, and handles cmd-. during print better. The pythonpreferences have also changed due to this.
Jack Jansen <jack.jansen@cwi.nl>
parents: 14773
diff changeset
47 return cr, tp
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
48
16557
9ce9e0342cc1 Bit the bullet and added a private GUSISIOUX for Python. This makes the delayconsole and keepopen code neater. Also tells Sioux to behave better with events, and handles cmd-. during print better. The pythonpreferences have also changed due to this.
Jack Jansen <jack.jansen@cwi.nl>
parents: 14773
diff changeset
49 def save(self, (cr, tp)):
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
50 flags = ord(self.data[9])
16557
9ce9e0342cc1 Bit the bullet and added a private GUSISIOUX for Python. This makes the delayconsole and keepopen code neater. Also tells Sioux to behave better with events, and handles cmd-. during print better. The pythonpreferences have also changed due to this.
Jack Jansen <jack.jansen@cwi.nl>
parents: 14773
diff changeset
51 newdata = tp + cr + self.data[8:]
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
52 self.loader.save(newdata)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
53
19640
f4af27cb2632 Added preferences/startup options for division warning
Jack Jansen <jack.jansen@cwi.nl>
parents: 16557
diff changeset
54 popt_default_default = NullLoader(chr(CUR_VERSION) + 14*'\0' + '\001')
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
55 popt_default = AnyResLoader('Popt', POPT_ID, default=popt_default_default)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
56 popt_loader = ResLoader(pref_fss, 'Popt', POPT_ID, default=popt_default)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
57 popt = PoptLoader(popt_loader)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
58
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
59 dir_default = AnyResLoader('alis', DIR_ID)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
60 dir = ResLoader(pref_fss, 'alis', DIR_ID, default=dir_default)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
61
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
62 gusi_default = AnyResLoader('GU\267I', GUSI_ID)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
63 gusi_loader = ResLoader(pref_fss, 'GU\267I', GUSI_ID, default=gusi_default)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
64 gusi = GusiLoader(gusi_loader)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
65
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
66 path_default = AnyResLoader('STR#', PATH_ID)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
67 path_loader = ResLoader(pref_fss, 'STR#', PATH_ID, default=path_default)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
68 path = StrListLoader(path_loader)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
69
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
70 class PythonOptions:
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
71 def __init__(self, popt=popt, dir=dir, gusi=gusi, path=path):
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
72 self.popt = popt
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
73 self.dir = dir
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
74 self.gusi = gusi
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
75 self.path = path
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
76
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
77 def load(self):
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
78 dict = {}
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
79 dict['path'] = self.path.load()
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
80 diralias = self.dir.load()
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
81 dirfss, dummy = macfs.RawAlias(diralias).Resolve()
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
82 dict['dir'] = dirfss
16557
9ce9e0342cc1 Bit the bullet and added a private GUSISIOUX for Python. This makes the delayconsole and keepopen code neater. Also tells Sioux to behave better with events, and handles cmd-. during print better. The pythonpreferences have also changed due to this.
Jack Jansen <jack.jansen@cwi.nl>
parents: 14773
diff changeset
83 dict['creator'], dict['type'] = self.gusi.load()
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
84 flags = self.popt.load()
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
85 dict['version'], dict['inspect'], dict['verbose'], dict['optimize'], \
14773
c5ec0b11f8c9 Keepconsole is now a 4-way option: never/errorexit/unseen output/always. Default is "unseen output". Upped the Popt version number.
Jack Jansen <jack.jansen@cwi.nl>
parents: 12593
diff changeset
86 dict['unbuffered'], dict['debugging'], dummy, dict['keep_console'], \
12593
eaee924efb19 Removed string-exception preference, added tabcheck and NavService preference, upped version number.
Jack Jansen <jack.jansen@cwi.nl>
parents: 7032
diff changeset
87 dict['nointopt'], dict['noargs'], dict['tabwarn'], \
19640
f4af27cb2632 Added preferences/startup options for division warning
Jack Jansen <jack.jansen@cwi.nl>
parents: 16557
diff changeset
88 dict['nosite'], dict['nonavservice'], dict['delayconsole'], \
f4af27cb2632 Added preferences/startup options for division warning
Jack Jansen <jack.jansen@cwi.nl>
parents: 16557
diff changeset
89 dict['divisionwarn'], dict['unixnewlines'] = flags
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
90 return dict
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
91
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
92 def save(self, dict):
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
93 self.path.save(dict['path'])
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
94 diralias = macfs.FSSpec(dict['dir']).NewAlias().data
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
95 self.dir.save(diralias)
16557
9ce9e0342cc1 Bit the bullet and added a private GUSISIOUX for Python. This makes the delayconsole and keepopen code neater. Also tells Sioux to behave better with events, and handles cmd-. during print better. The pythonpreferences have also changed due to this.
Jack Jansen <jack.jansen@cwi.nl>
parents: 14773
diff changeset
96 self.gusi.save((dict['creator'], dict['type']))
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
97 flags = dict['version'], dict['inspect'], dict['verbose'], dict['optimize'], \
14773
c5ec0b11f8c9 Keepconsole is now a 4-way option: never/errorexit/unseen output/always. Default is "unseen output". Upped the Popt version number.
Jack Jansen <jack.jansen@cwi.nl>
parents: 12593
diff changeset
98 dict['unbuffered'], dict['debugging'], 0, dict['keep_console'], \
12593
eaee924efb19 Removed string-exception preference, added tabcheck and NavService preference, upped version number.
Jack Jansen <jack.jansen@cwi.nl>
parents: 7032
diff changeset
99 dict['nointopt'], dict['noargs'], dict['tabwarn'], \
19640
f4af27cb2632 Added preferences/startup options for division warning
Jack Jansen <jack.jansen@cwi.nl>
parents: 16557
diff changeset
100 dict['nosite'], dict['nonavservice'], dict['delayconsole'], \
f4af27cb2632 Added preferences/startup options for division warning
Jack Jansen <jack.jansen@cwi.nl>
parents: 16557
diff changeset
101 dict['divisionwarn'], dict['unixnewlines']
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
102 self.popt.save(flags)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
103
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
104 def AppletOptions(file):
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
105 fss = macfs.FSSpec(file)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
106 a_popt = PoptLoader(ResLoader(fss, 'Popt', OVERRIDE_POPT_ID, default=popt_loader))
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
107 a_dir = ResLoader(fss, 'alis', OVERRIDE_DIR_ID, default=dir)
7029
a367aaa6503c Loading defaults for gusi/sys.path didn't work for applets. Fixed.
Jack Jansen <jack.jansen@cwi.nl>
parents: 6291
diff changeset
108 a_gusi = GusiLoader(
a367aaa6503c Loading defaults for gusi/sys.path didn't work for applets. Fixed.
Jack Jansen <jack.jansen@cwi.nl>
parents: 6291
diff changeset
109 ResLoader(fss, 'GU\267I', OVERRIDE_GUSI_ID, default=gusi_loader))
a367aaa6503c Loading defaults for gusi/sys.path didn't work for applets. Fixed.
Jack Jansen <jack.jansen@cwi.nl>
parents: 6291
diff changeset
110 a_path = StrListLoader(
a367aaa6503c Loading defaults for gusi/sys.path didn't work for applets. Fixed.
Jack Jansen <jack.jansen@cwi.nl>
parents: 6291
diff changeset
111 ResLoader(fss, 'STR#', OVERRIDE_PATH_ID, default=path_loader))
6282
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
112 return PythonOptions(a_popt, a_dir, a_gusi, a_path)
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
113
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
114 def _test():
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
115 import preferences
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
116 preferences.debug = 1
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
117 dict = PythonOptions().load()
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
118 for k in dict.keys():
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
119 print k, '\t', dict[k]
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
120
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
121 if __name__ == '__main__':
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
122 _test()
f6839e532be2 Preferences is a general module to get (and set) preferences in
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
123