nova-parser.nv
· 6.2 KiB · Text
Неформатований
Playground
|:: parse nova|
:: normalize whitespace
:: parse the container format
:: parse the label format
:: parse patterns
|:: normalize whitespace? :src: 9| :processed: 32
|:: normalize whitespace? :src: 10| :processed: 32
|:: normalize whitespace? :src: 13| :processed: 32
|:: normalize whitespace? :src: 32| :processed: 32
|:: normalize whitespace? :src: $char| :processed: $char
|:: normalize whitespace | :: prepare next pass
|:: parse the container format? :src: $delim :delim: $delim? :left:| :processed: rule
|:: parse the container format? :src: $delim :delim: $delim? | :processed: rule :left:
|:: parse the container format? :src: $char :delim: $delim? | :processed: $char
|:: parse the container format? :src: 32 |
|:: parse the container format? :src: $char | :processed: rule :delim: $char :left:
|:: parse the container format :delim: $delim :left:| :: prepare next pass :processed: end :processed: rule
|:: parse the container format :delim: $delim | :: prepare next pass :processed: end
|:: parse the container format |
|:: parse the label format? :src: rule :delim: $delim? :in label:| :processed: rule :processed: label
|:: parse the label format? :src: $delim :delim: $delim? :in label:| :processed: label
|:: parse the label format? :src: $delim :delim: $delim? | :processed: label :in label:
|:: parse the label format? :src: $char :delim: $delim? | :processed: $char
|:: parse the label format? :src: 32 |
|:: parse the label format? :src: rule | :processed: rule
|:: parse the label format? :src: $char | :processed: label :delim: $char :in label:
|:: parse the label format :delim: $delim | :: prepare next pass
|:: parse the label format | :: prepare next pass
|:: parse patterns? :src: label :in label: | :processed: label
|:: parse patterns? :src: $char :in label:?| :processed: $char
|:: parse patterns? :src: 32 :processed: rule? |
|:: parse patterns? :src: 32 :processed: label? |
|:: parse patterns? :src: 32 :processed: symbol? |
|:: parse patterns? :src: rule :processed: symbol | :processed: rule
|:: parse patterns? :src: label | :processed: label :in label:
|:: parse patterns? :src: 32 | :processed: symbol
|:: parse patterns? :src: $char | :processed: $char
|:: parse patterns | :: prepare next pass
|:: prepare next pass? :processed: $symbol| :src: $symbol
|:: prepare next pass |
|| :: parse nova :src: "
>== parse nova>
== normalize whitespace
== parse the container format
== parse the label format
== parse patterns
>== normalize whitespace? =src= 9> =processed= 32
>== normalize whitespace? =src= 10> =processed= 32
>== normalize whitespace? =src= 13> =processed= 32
>== normalize whitespace? =src= 32> =processed= 32
>== normalize whitespace? =src= $char> =processed= $char
>== normalize whitespace > == prepare next pass
>== parse the container format? =src= $delim =delim= $delim? =left=> =processed= rule
>== parse the container format? =src= $delim =delim= $delim? > =processed= rule =left=
>== parse the container format? =src= $char =delim= $delim? > =processed= $char
>== parse the container format? =src= 32 >
>== parse the container format? =src= $char > =processed= rule =delim= $char =left=
>== parse the container format =delim= $delim =left=> == prepare next pass =processed= end =processed= rule
>== parse the container format =delim= $delim > == prepare next pass =processed= end
>== parse the container format >
>== parse the label format? =src= rule =delim= $delim? =in label=> =processed= rule =processed= label
>== parse the label format? =src= $delim =delim= $delim? =in label=> =processed= label
>== parse the label format? =src= $delim =delim= $delim? > =processed= label =in label=
>== parse the label format? =src= $char =delim= $delim? > =processed= $char
>== parse the label format? =src= 32 >
>== parse the label format? =src= rule > =processed= rule
>== parse the label format? =src= $char > =processed= label =delim= $char =in label=
>== parse the label format =delim= $delim > == prepare next pass
>== parse the label format > == prepare next pass
>== parse patterns? =src= label =in label= > =processed= label
>== parse patterns? =src= $char =in label=?> =processed= $char
>== parse patterns? =src= 32 =processed= rule? >
>== parse patterns? =src= 32 =processed= label? >
>== parse patterns? =src= 32 =processed= symbol? >
>== parse patterns? =src= rule =processed= symbol > =processed= rule
>== parse patterns? =src= label > =processed= label =in label=
>== parse patterns? =src= 32 > =processed= symbol
>== parse patterns? =src= $char > =processed= $char
>== parse patterns > == prepare next pass
>== prepare next pass? =processed= $symbol> =src= $symbol
>== prepare next pass >
"
:: print 'src'
|:: print 'src'? :src: rule :left:| :: print (formatted) :message: 124 :message: 10 :message: 9
|:: print 'src'? :src: rule | :: print (formatted) :message: 10 :message: 124 :left:
|:: print 'src'? :src: label | :: print (formatted) :message: 58
|:: print 'src'? :src: symbol | :: print (formatted) :message: 32
|:: print 'src' :src: end | :: print (formatted) :message: 10
|:: print 'src'? :src: $char | :: print (formatted) :message: $char
|:: print 'src' | :: print (formatted) :message: 10
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 |