Naposledy aktivní 1748577199

capitalex's Avatar capitalex revidoval tento gist 1748577198. Přejít na revizi

1 file changed, 103 insertions

nova-parser.nv(vytvořil soubor)

@@ -0,0 +1,103 @@
1 + |:: parse nova|
2 + :: normalize whitespace
3 + :: parse the container format
4 + :: parse the label format
5 + :: parse patterns
6 +
7 + |:: normalize whitespace? :src: 9| :processed: 32
8 + |:: normalize whitespace? :src: 10| :processed: 32
9 + |:: normalize whitespace? :src: 13| :processed: 32
10 + |:: normalize whitespace? :src: 32| :processed: 32
11 + |:: normalize whitespace? :src: $char| :processed: $char
12 + |:: normalize whitespace | :: prepare next pass
13 +
14 + |:: parse the container format? :src: $delim :delim: $delim? :left:| :processed: rule
15 + |:: parse the container format? :src: $delim :delim: $delim? | :processed: rule :left:
16 + |:: parse the container format? :src: $char :delim: $delim? | :processed: $char
17 + |:: parse the container format? :src: 32 |
18 + |:: parse the container format? :src: $char | :processed: rule :delim: $char :left:
19 + |:: parse the container format :delim: $delim :left:| :: prepare next pass :processed: end :processed: rule
20 + |:: parse the container format :delim: $delim | :: prepare next pass :processed: end
21 + |:: parse the container format |
22 +
23 + |:: parse the label format? :src: rule :delim: $delim? :in label:| :processed: rule :processed: label
24 + |:: parse the label format? :src: $delim :delim: $delim? :in label:| :processed: label
25 + |:: parse the label format? :src: $delim :delim: $delim? | :processed: label :in label:
26 + |:: parse the label format? :src: $char :delim: $delim? | :processed: $char
27 + |:: parse the label format? :src: 32 |
28 + |:: parse the label format? :src: rule | :processed: rule
29 + |:: parse the label format? :src: $char | :processed: label :delim: $char :in label:
30 + |:: parse the label format :delim: $delim | :: prepare next pass
31 + |:: parse the label format | :: prepare next pass
32 +
33 + |:: parse patterns? :src: label :in label: | :processed: label
34 + |:: parse patterns? :src: $char :in label:?| :processed: $char
35 + |:: parse patterns? :src: 32 :processed: rule? |
36 + |:: parse patterns? :src: 32 :processed: label? |
37 + |:: parse patterns? :src: 32 :processed: symbol? |
38 + |:: parse patterns? :src: rule :processed: symbol | :processed: rule
39 + |:: parse patterns? :src: label | :processed: label :in label:
40 + |:: parse patterns? :src: 32 | :processed: symbol
41 + |:: parse patterns? :src: $char | :processed: $char
42 + |:: parse patterns | :: prepare next pass
43 +
44 + |:: prepare next pass? :processed: $symbol| :src: $symbol
45 + |:: prepare next pass |
46 +
47 + || :: parse nova :src: "
48 + >== parse nova>
49 + == normalize whitespace
50 + == parse the container format
51 + == parse the label format
52 + == parse patterns
53 +
54 + >== normalize whitespace? =src= 9> =processed= 32
55 + >== normalize whitespace? =src= 10> =processed= 32
56 + >== normalize whitespace? =src= 13> =processed= 32
57 + >== normalize whitespace? =src= 32> =processed= 32
58 + >== normalize whitespace? =src= $char> =processed= $char
59 + >== normalize whitespace > == prepare next pass
60 +
61 + >== parse the container format? =src= $delim =delim= $delim? =left=> =processed= rule
62 + >== parse the container format? =src= $delim =delim= $delim? > =processed= rule =left=
63 + >== parse the container format? =src= $char =delim= $delim? > =processed= $char
64 + >== parse the container format? =src= 32 >
65 + >== parse the container format? =src= $char > =processed= rule =delim= $char =left=
66 + >== parse the container format =delim= $delim =left=> == prepare next pass =processed= end =processed= rule
67 + >== parse the container format =delim= $delim > == prepare next pass =processed= end
68 + >== parse the container format >
69 +
70 + >== parse the label format? =src= rule =delim= $delim? =in label=> =processed= rule =processed= label
71 + >== parse the label format? =src= $delim =delim= $delim? =in label=> =processed= label
72 + >== parse the label format? =src= $delim =delim= $delim? > =processed= label =in label=
73 + >== parse the label format? =src= $char =delim= $delim? > =processed= $char
74 + >== parse the label format? =src= 32 >
75 + >== parse the label format? =src= rule > =processed= rule
76 + >== parse the label format? =src= $char > =processed= label =delim= $char =in label=
77 + >== parse the label format =delim= $delim > == prepare next pass
78 + >== parse the label format > == prepare next pass
79 +
80 + >== parse patterns? =src= label =in label= > =processed= label
81 + >== parse patterns? =src= $char =in label=?> =processed= $char
82 + >== parse patterns? =src= 32 =processed= rule? >
83 + >== parse patterns? =src= 32 =processed= label? >
84 + >== parse patterns? =src= 32 =processed= symbol? >
85 + >== parse patterns? =src= rule =processed= symbol > =processed= rule
86 + >== parse patterns? =src= label > =processed= label =in label=
87 + >== parse patterns? =src= 32 > =processed= symbol
88 + >== parse patterns? =src= $char > =processed= $char
89 + >== parse patterns > == prepare next pass
90 +
91 + >== prepare next pass? =processed= $symbol> =src= $symbol
92 + >== prepare next pass >
93 + "
94 + :: print 'src'
95 +
96 +
97 + |:: print 'src'? :src: rule :left:| :: print (formatted) :message: 124 :message: 10 :message: 9
98 + |:: print 'src'? :src: rule | :: print (formatted) :message: 10 :message: 124 :left:
99 + |:: print 'src'? :src: label | :: print (formatted) :message: 58
100 + |:: print 'src'? :src: symbol | :: print (formatted) :message: 32
101 + |:: print 'src' :src: end | :: print (formatted) :message: 10
102 + |:: print 'src'? :src: $char | :: print (formatted) :message: $char
103 + |:: print 'src' | :: print (formatted) :message: 10
Novější Starší