aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/toplevel.dep.ps
blob: f1b89188742e96c4b3ea8413b11f81830abc54bf (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 577 190
%%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 577 190
gsave
35 35 542 155 boxprim clip newpath
36 36 translate
0 0 1 beginpage
0.6150 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
715 95 46 18 ellipse_path
stroke
gsave 10 dict begin
715 96 moveto (Vernacinterp) 72 14.00 -0.50 alignedtext
end grestore
end grestore

%	Command
gsave 10 dict begin
838 124 39 18 ellipse_path
stroke
gsave 10 dict begin
838 125 moveto (Command) 58 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacinterp -> Command
newpath 755 104 moveto
767 107 781 110 794 114 curveto
stroke
newpath 794 111 moveto
803 116 lineto
793 116 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Himsg
gsave 10 dict begin
838 70 29 18 ellipse_path
stroke
gsave 10 dict begin
838 71 moveto (Himsg) 37 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacinterp -> Himsg
newpath 756 87 moveto
771 84 787 80 801 78 curveto
stroke
newpath 800 76 moveto
810 76 lineto
801 81 lineto
closepath
gsave 0 setgray stroke grestore fill

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

%	Metasyntax
gsave 10 dict begin
397 126 43 18 ellipse_path
stroke
gsave 10 dict begin
397 127 moveto (Metasyntax) 65 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacentries -> Metasyntax
newpath 302 126 moveto
316 126 331 126 344 126 curveto
stroke
newpath 344 124 moveto
354 126 lineto
344 129 lineto
closepath
gsave 0 setgray stroke grestore fill

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

%	Vernacentries -> Mltop
newpath 287 113 moveto
311 104 342 93 365 84 curveto
stroke
newpath 363 82 moveto
373 81 lineto
365 87 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Record
gsave 10 dict begin
715 149 30 18 ellipse_path
stroke
gsave 10 dict begin
715 150 moveto (Record) 40 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernacentries -> Record
newpath 289 139 moveto
312 147 338 156 338 156 curveto
433 163 598 156 675 152 curveto
stroke
newpath 675 150 moveto
685 151 lineto
675 154 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Vernac
gsave 10 dict begin
562 126 30 18 ellipse_path
stroke
gsave 10 dict begin
562 127 moveto (Vernac) 40 14.00 -0.50 alignedtext
end grestore
end grestore

%	Metasyntax -> Vernac
newpath 440 126 moveto
466 126 498 126 522 126 curveto
stroke
newpath 521 124 moveto
531 126 lineto
521 129 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Record -> Command
newpath 744 143 moveto
758 141 776 137 792 133 curveto
stroke
newpath 792 131 moveto
802 131 lineto
793 135 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Record -> Himsg
newpath 739 138 moveto
747 133 756 129 762 125 curveto
776 116 786 103 798 94 curveto
801 92 804 90 807 88 curveto
stroke
newpath 806 85 moveto
816 82 lineto
809 90 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Class
gsave 10 dict begin
838 178 27 18 ellipse_path
stroke
gsave 10 dict begin
838 179 moveto (Class) 30 14.00 -0.50 alignedtext
end grestore
end grestore

%	Record -> Class
newpath 744 156 moveto
762 160 784 165 803 170 curveto
stroke
newpath 803 167 moveto
812 172 lineto
802 172 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Vernac -> Vernacinterp
newpath 591 120 moveto
612 116 640 110 665 105 curveto
stroke
newpath 664 103 moveto
674 103 lineto
665 108 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Discharge
gsave 10 dict begin
715 203 38 18 ellipse_path
stroke
gsave 10 dict begin
715 204 moveto (Discharge) 56 14.00 -0.50 alignedtext
end grestore
end grestore

%	Vernac -> Discharge
newpath 585 138 moveto
611 151 654 172 683 187 curveto
stroke
newpath 681 183 moveto
689 190 lineto
679 188 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Discharge -> Class
newpath 751 196 moveto
767 193 786 189 803 185 curveto
stroke
newpath 802 183 moveto
812 183 lineto
803 188 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Recordobj
gsave 10 dict begin
838 232 39 18 ellipse_path
stroke
gsave 10 dict begin
838 233 moveto (Recordobj) 58 14.00 -0.50 alignedtext
end grestore
end grestore

%	Discharge -> Recordobj
newpath 750 211 moveto
763 214 779 218 793 222 curveto
stroke
newpath 793 219 moveto
802 224 lineto
792 224 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Toplevel
gsave 10 dict begin
253 45 35 18 ellipse_path
stroke
gsave 10 dict begin
253 46 moveto (Toplevel) 49 14.00 -0.50 alignedtext
end grestore
end grestore

%	Toplevel -> Mltop
newpath 286 51 moveto
309 55 339 61 361 65 curveto
stroke
newpath 361 62 moveto
370 67 lineto
360 67 lineto
closepath
gsave 0 setgray stroke grestore fill

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

%	Toplevel -> Protectedtoplevel
newpath 286 39 moveto
301 36 320 33 337 30 curveto
stroke
newpath 337 28 moveto
347 28 lineto
338 32 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Protectedtoplevel -> Vernac
newpath 435 32 moveto
443 34 450 37 456 42 curveto
474 58 474 88 492 102 curveto
500 107 512 112 523 116 curveto
stroke
newpath 524 114 moveto
533 119 lineto
523 119 lineto
closepath
gsave 0 setgray stroke grestore fill

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

%	Protectedtoplevel -> Errors
newpath 456 18 moveto
479 18 505 18 525 18 curveto
stroke
newpath 524 16 moveto
534 18 lineto
524 21 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Line_oriented_parser
gsave 10 dict begin
562 72 70 18 ellipse_path
stroke
gsave 10 dict begin
562 73 moveto (Line_oriented_parser) 119 14.00 -0.50 alignedtext
end grestore
end grestore

%	Protectedtoplevel -> Line_oriented_parser
newpath 437 31 moveto
459 38 486 47 510 55 curveto
stroke
newpath 510 52 moveto
519 58 lineto
509 57 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Errors -> Himsg
newpath 588 23 moveto
639 33 747 53 803 64 curveto
stroke
newpath 800 61 moveto
810 65 lineto
800 66 lineto
closepath
gsave 0 setgray stroke grestore fill

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

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

%	Minicoq -> Fhimsg
newpath 68 153 moveto
77 153 86 153 94 153 curveto
stroke
newpath 94 151 moveto
104 153 lineto
94 156 lineto
closepath
gsave 0 setgray stroke grestore fill

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

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

%	Coqtop -> Coqinit
newpath 62 64 moveto
73 61 86 58 98 55 curveto
stroke
newpath 97 53 moveto
107 52 lineto
98 58 lineto
closepath
gsave 0 setgray stroke grestore fill

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

%	Coqtop -> Usage
newpath 62 80 moveto
74 83 88 87 101 90 curveto
stroke
newpath 101 87 moveto
110 92 lineto
100 92 lineto
closepath
gsave 0 setgray stroke grestore fill

%	Coqinit -> Toplevel
newpath 168 45 moveto
180 45 195 45 208 45 curveto
stroke
newpath 208 43 moveto
218 45 lineto
208 48 lineto
closepath
gsave 0 setgray stroke grestore fill
endpage
grestore
%%PageTrailer
%%EndPage: 1
%%Trailer
%%Pages: 1
end
restore
%%EOF