Mercurial > ~dholland > hg > ag > index.cgi
comparison tests/agcl/parsifal/reg.syn @ 0:13d2b8934445
Import AnaGram (near-)release tree into Mercurial.
author | David A. Holland |
---|---|
date | Sat, 22 Dec 2007 17:52:45 -0500 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:13d2b8934445 |
---|---|
1 /* | |
2 * AnaGram, A System for Syntax Directed Programming | |
3 * Copyright 1993-2002 Parsifal Software. All Rights Reserved. | |
4 * See the file COPYING for license and usage terms. | |
5 */ | |
6 | |
7 eof = 0 | |
8 blank = ' ' + '\t' | |
9 name char = ~(eof + '[' + ']' + '\\' + '\n' + '"' + '@') | |
10 digit = '0-9' | |
11 | |
12 | |
13 reg file $ | |
14 -> reg line?..., eof | |
15 | |
16 reg line | |
17 -> title, eol | |
18 -> path, eol | |
19 -> key, eol | |
20 | |
21 eol | |
22 ->'\n' | |
23 -> eol, '\n' | |
24 | |
25 name | |
26 -> name char | |
27 -> name, name char | |
28 | |
29 title | |
30 -> name | |
31 | |
32 path | |
33 -> '[', path char?..., ']' | |
34 | |
35 path char | |
36 -> ~(eof + ']' + '\\' + '\n' + '@') | |
37 -> '\\', ~eof | |
38 | |
39 string | |
40 -> '"', string char?..., '"' | |
41 | |
42 string char | |
43 -> ~(eof + '"' + '\\') | |
44 -> '\\', ~eof | |
45 | |
46 key | |
47 -> string, '=', value | |
48 -> '@', '=', value | |
49 | |
50 value | |
51 -> string | |
52 -> hex data | |
53 -> "dword:", hex word | |
54 | |
55 hex data | |
56 -> "hex", ['(', hex word, ')'], ':', hex bytes? | |
57 | |
58 hex bytes | |
59 -> hex byte | |
60 -> hex bytes, separator, hex byte | |
61 | |
62 separator | |
63 -> ',' | |
64 -> ',', "\\\n", ' '?... | |
65 | |
66 hex byte | |
67 -> hex digit, hex digit | |
68 | |
69 hex digit | |
70 -> '0-9' | |
71 -> 'a-f' | |
72 | |
73 hex word | |
74 -> hex digit | |
75 -> hex word, hex digit | |
76 |