aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/toplevel.dep.ps
blob: ef9c5f1637bfaeeae5175c7175555c4432f47196 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
%!PS-Adobe-2.0
%%Creator: dot version uwin98 (01-26-98)
%%For: Gros nain
%%Title: G
%%Pages: (atend)
%%BoundingBox: 36 36 576 260
%%EndComments
%%BeginProlog
save
/DotDict 200 dict def
DotDict begin

%%BeginResource: procset
/coord-font-family /Times-Roman def
/default-font-family /Times-Roman def
/coordfont coord-font-family findfont 8 scalefont def

/InvScaleFactor 1.0 def
/set_scale {
	dup 1 exch div /InvScaleFactor exch def
	dup scale
} bind def

% styles
/solid { } bind def
/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def
/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def
/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def
/bold { 2 setlinewidth } bind def
/filled { } bind def
/unfilled { } bind def
/rounded { } bind def
/diagonals { } bind def

% hooks for setting color 
/nodecolor { sethsbcolor } bind def
/edgecolor { sethsbcolor } bind def
/graphcolor { sethsbcolor } bind def
/nopcolor {pop pop pop} bind def

/beginpage {	% i j npages
	/npages exch def
	/j exch def
	/i exch def
	/str 10 string def
	npages 1 gt {
		gsave
			coordfont setfont
			0 0 moveto
			(() show i str cvs show (,) show j str cvs show ()) show
		grestore
	} if
} bind def

/set_font {
	findfont exch
	scalefont setfont
} def

% draw aligned label in bounding box aligned to current point
% alignfactor tells what fraction to place on the left.
% -.5 is centered.
/alignedtext {			% text labelwidth fontsz alignfactor
	/alignfactor exch def
	/fontsz exch def
	/width exch def
	/text exch def
	gsave
		% even if node or edge is dashed, don't paint text with dashes
		[] 0 setdash
		currentpoint newpath moveto
		text stringwidth pop
		alignfactor mul fontsz -.3 mul rmoveto
		text show
	grestore
} def

/boxprim {				% xcorner ycorner xsize ysize
		4 2 roll
		moveto
		2 copy
		exch 0 rlineto
		0 exch rlineto
		pop neg 0 rlineto
		closepath
} bind def

/ellipse_path {
	/ry exch def
	/rx exch def
	/y exch def
	/x exch def
	matrix currentmatrix
	newpath
	x y translate
	rx ry scale
	0 0 1 0 360 arc
	setmatrix
} bind def

/endpage { showpage } bind def

/layercolorseq
	[	% layer color sequence - darkest to lightest
		[0 0 0]
		[.2 .8 .8]
		[.4 .8 .8]
		[.6 .8 .8]
		[.8 .8 .8]
	]
def

/setlayer {/maxlayer exch def /curlayer exch def
	layercolorseq curlayer get
	aload pop sethsbcolor
	/nodecolor {nopcolor} def
	/edgecolor {nopcolor} def
	/graphcolor {nopcolor} def
} bind def

/onlayer { curlayer ne {invis} if } def

/onlayers {
	/myupper exch def
	/mylower exch def
	curlayer mylower lt
	curlayer myupper gt
	or
	{invis} if
} def

/curlayer 0 def

%%EndResource
%%EndProlog
%%BeginSetup
14 default-font-family set_font
% /arrowlength 10 def
% /arrowwidth 5 def
%%EndSetup
%%Page: 1 1
%%PageBoundingBox: 36 36 576 260
gsave
35 35 541 225 boxprim clip newpath
36 36 translate
0 0 1 beginpage
0.6353 set_scale
0 0 translate 0 rotate
0.000 0.000 0.000 graphcolor
14.00 /Times-Roman set_font

%	Vernacinterp
gsave 10 dict begin
687 234 46 18 ellipse_path
stroke
gsave 10 dict begin
687 235 moveto (Vernacinterp) 72 14.00 -0.50 alignedtext
end grestore
end grestore

%	Command
gsave 10 dict begin
810 203 39 18 ellipse_path
stroke
gsave 10 dict begin
810 204 moveto (Command) 58 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacinterp -> Command
newpath 726 224 moveto
739 221 753 218 766 214 curveto
stroke
newpath 765 212 moveto
775 212 lineto
766 217 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Himsg
gsave 10 dict begin
810 257 29 18 ellipse_path
stroke
gsave 10 dict begin
810 258 moveto (Himsg) 37 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacinterp -> Himsg
newpath 729 242 moveto
744 244 759 248 773 250 curveto
stroke
newpath 773 247 moveto
782 252 lineto
772 252 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Vernacentries
gsave 10 dict begin
534 126 49 18 ellipse_path
stroke
gsave 10 dict begin
534 127 moveto (Vernacentries) 77 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacentries -> Vernacinterp
newpath 554 143 moveto
578 162 616 193 640 210 curveto
643 212 647 215 652 217 curveto
stroke
newpath 650 213 moveto
658 220 lineto
648 218 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Discharge
gsave 10 dict begin
687 126 38 18 ellipse_path
stroke
gsave 10 dict begin
687 127 moveto (Discharge) 56 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacentries -> Discharge
newpath 583 126 moveto
601 126 621 126 639 126 curveto
stroke
newpath 638 124 moveto
648 126 lineto
638 129 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Metasyntax
gsave 10 dict begin
687 72 43 18 ellipse_path
stroke
gsave 10 dict begin
687 73 moveto (Metasyntax) 65 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacentries -> Metasyntax
newpath 569 113 moveto
592 106 622 96 645 87 curveto
stroke
newpath 644 85 moveto
654 84 lineto
645 90 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Mltop
gsave 10 dict begin
687 18 27 18 ellipse_path
stroke
gsave 10 dict begin
687 19 moveto (Mltop) 34 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacentries -> Mltop
newpath 554 109 moveto
578 90 616 59 640 42 curveto
645 39 651 35 658 32 curveto
stroke
newpath 654 31 moveto
664 29 lineto
656 36 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Record
gsave 10 dict begin
687 180 30 18 ellipse_path
stroke
gsave 10 dict begin
687 181 moveto (Record) 40 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacentries -> Record
newpath 569 139 moveto
594 147 628 159 653 168 curveto
stroke
newpath 653 165 moveto
661 171 lineto
651 170 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Class
gsave 10 dict begin
810 149 27 18 ellipse_path
stroke
gsave 10 dict begin
810 150 moveto (Class) 30 14.00 -0.50 alignedtext
end grestore
end grestore

%	Discharge -> Class
newpath 723 133 moveto
739 136 758 140 775 142 curveto
stroke
newpath 775 139 moveto
784 144 lineto
774 144 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Recordobj
gsave 10 dict begin
810 95 39 18 ellipse_path
stroke
gsave 10 dict begin
810 96 moveto (Recordobj) 58 14.00 -0.50 alignedtext
end grestore
end grestore

%	Discharge -> Recordobj
newpath 721 117 moveto
735 114 751 110 766 106 curveto
stroke
newpath 765 104 moveto
775 104 lineto
766 109 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Record -> Command
newpath 716 185 moveto
730 187 748 191 763 194 curveto
stroke
newpath 764 192 moveto
773 196 lineto
763 196 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Record -> Himsg
newpath 710 192 moveto
722 198 734 204 734 204 curveto
747 212 758 224 770 233 curveto
773 235 778 238 783 240 curveto
stroke
newpath 782 236 moveto
789 244 lineto
779 241 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Record -> Class
newpath 715 173 moveto
733 169 756 163 776 158 curveto
stroke
newpath 775 156 moveto
785 156 lineto
776 161 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Vernac
gsave 10 dict begin
534 226 30 18 ellipse_path
stroke
gsave 10 dict begin
534 227 moveto (Vernac) 40 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernac -> Vernacinterp
newpath 565 228 moveto
584 229 611 230 634 231 curveto
stroke
newpath 631 228 moveto
641 232 lineto
631 233 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Toplevel
gsave 10 dict begin
239 122 35 18 ellipse_path
stroke
gsave 10 dict begin
239 123 moveto (Toplevel) 49 14.00 -0.50 alignedtext
end grestore
end grestore

%	Toplevel -> Mltop
newpath 271 115 moveto
353 96 570 45 654 26 curveto
stroke
newpath 651 24 moveto
661 24 lineto
652 29 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Protectedtoplevel
gsave 10 dict begin
369 253 59 18 ellipse_path
stroke
gsave 10 dict begin
369 254 moveto (Protectedtoplevel) 97 14.00 -0.50 alignedtext
end grestore
end grestore

%	Toplevel -> Protectedtoplevel
newpath 255 138 moveto
278 161 320 204 347 231 curveto
stroke
newpath 347 227 moveto
352 236 lineto
343 231 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Protectedtoplevel -> Vernac
newpath 421 244 moveto
446 240 473 236 495 232 curveto
stroke
newpath 494 230 moveto
504 231 lineto
494 235 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Errors
gsave 10 dict begin
534 280 27 18 ellipse_path
stroke
gsave 10 dict begin
534 281 moveto (Errors) 34 14.00 -0.50 alignedtext
end grestore
end grestore

%	Protectedtoplevel -> Errors
newpath 421 262 moveto
447 266 476 271 499 274 curveto
stroke
newpath 497 271 moveto
507 275 lineto
497 276 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Line_oriented_parser
gsave 10 dict begin
534 334 70 18 ellipse_path
stroke
gsave 10 dict begin
534 335 moveto (Line_oriented_parser) 119 14.00 -0.50 alignedtext
end grestore
end grestore

%	Protectedtoplevel -> Line_oriented_parser
newpath 395 269 moveto
416 282 445 300 464 310 curveto
469 312 476 315 483 318 curveto
stroke
newpath 481 315 moveto
490 320 lineto
480 320 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Errors -> Himsg
newpath 561 278 moveto
611 274 717 265 773 260 curveto
stroke
newpath 771 258 moveto
781 259 lineto
771 263 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Minicoq
gsave 10 dict begin
34 230 34 18 ellipse_path
stroke
gsave 10 dict begin
34 231 moveto (Minicoq) 47 14.00 -0.50 alignedtext
end grestore
end grestore

%	Fhimsg
gsave 10 dict begin
136 230 31 18 ellipse_path
stroke
gsave 10 dict begin
136 231 moveto (Fhimsg) 42 14.00 -0.50 alignedtext
end grestore
end grestore

%	Minicoq -> Fhimsg
newpath 68 230 moveto
77 230 86 230 94 230 curveto
stroke
newpath 94 228 moveto
104 230 lineto
94 233 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Coqtop
gsave 10 dict begin
34 149 31 18 ellipse_path
stroke
gsave 10 dict begin
34 150 moveto (Coqtop) 41 14.00 -0.50 alignedtext
end grestore
end grestore

%	Coqinit
gsave 10 dict begin
136 122 31 18 ellipse_path
stroke
gsave 10 dict begin
136 123 moveto (Coqinit) 42 14.00 -0.50 alignedtext
end grestore
end grestore

%	Coqtop -> Coqinit
newpath 62 141 moveto
73 138 86 135 98 132 curveto
stroke
newpath 97 130 moveto
107 129 lineto
98 135 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Usage
gsave 10 dict begin
136 176 27 18 ellipse_path
stroke
gsave 10 dict begin
136 177 moveto (Usage) 34 14.00 -0.50 alignedtext
end grestore
end grestore

%	Coqtop -> Usage
newpath 62 157 moveto
74 160 88 164 101 167 curveto
stroke
newpath 101 164 moveto
110 169 lineto
100 169 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Coqinit -> Toplevel
newpath 168 122 moveto
176 122 185 122 194 122 curveto
stroke
newpath 194 120 moveto
204 122 lineto
194 125 lineto
closepath
gsave 0 setgray stroke grestore fill
endpage
grestore
%%PageTrailer
%%EndPage: 1
%%Trailer
%%Pages: 1
end
restore
%%EOF