Coverage report: /development/source/library/org/datagraph/spocq-shard/src/core/encoding/csv-grammar.lisp

KindCoveredAll%
expression01850 0.0
branch0190 0.0
Key
Not instrumented
Conditionalized out
Executed
Not executed
 
Both branches taken
One branch taken
Neither branch taken
1
 
2
 (IN-PACKAGE "ORG.DATAGRAPH.CSV") 
3
 (DECLAIM (FTYPE (FUNCTION (T) (VALUES T T T)) IS-DQUOTE1)) 
4
 (DECLAIM (FTYPE (FUNCTION (T) (VALUES T T T)) IS-DQUOTE2)) 
5
 (DECLAIM (FTYPE (FUNCTION (T &KEY &ALLOW-OTHER-KEYS) (VALUES T T T)) |file-Parser|)) 
6
 (DEFUN IS-DQUOTE1 (ATN-PARSER::ITEM) (ATN-PARSER:%ATN-TRACE-FORM (AND ATN-PARSER::ITEM (OR (IS-DQUOTE ATN-PARSER::ITEM)))))
7
 (DEFUN IS-DQUOTE2 (ATN-PARSER::ITEM) (ATN-PARSER:%ATN-TRACE-FORM (AND ATN-PARSER::ITEM (OR (IS-DQUOTE ATN-PARSER::ITEM)))))
8
 (PROGN
9
  (DEFVAR |file-INDEX|)
10
  (DEFUN |file| (ATN-PARSER::INDEX &AUX (EOL NIL) (|filerecords| NIL) (|header| NIL))
11
    "{1 } file ::= (header EOL)? filerecords?
12
 (ORG.DATAGRAPH.CSV::EOL ORG.DATAGRAPH.CSV::|filerecords|
13
                         ORG.DATAGRAPH.CSV::|header|)"
14
    (DECLARE (SPECIAL |file-INDEX|))
15
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |file-INDEX| ATN-PARSER:*ATN-LEVEL))
16
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
17
    (IF (< |file-INDEX| ATN-PARSER::INDEX)
18
        (LET ((|file-INDEX| ATN-PARSER::INDEX)
19
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
20
              (ATN-PARSER:*ATN-STACK (CONS '|file| ATN-PARSER:*ATN-STACK)))
21
          (DECLARE (SPECIAL |file-INDEX|))
22
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
23
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
24
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
25
            (ATN-PARSER:%ATN-BLOCK |file|
26
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
27
                                              (SETF ATN-PARSER:*ATN-TERM* '|file|)
28
                                              (RETURN-FROM |file| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
29
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
30
                                              (RETURN-FROM |file| (VALUES NIL ATN-PARSER::INDEX NIL)))
31
                                            (|file.2| (ATN-PARSER::INDEX)
32
                                              (ATN-PARSER:%ATN-NODE-BLOCK |file.2|
33
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |file|)
34
                                                                                                      (WHEN T
35
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
36
                                                                                                                '|file|)
37
                                                                                                        (ATN-PARSER:%ATN-TRACE
38
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
39
                                                                                                         '|file| ATN-PARSER::INDEX
40
                                                                                                         (LIST 'EOL EOL
41
                                                                                                               '|filerecords|
42
                                                                                                               |filerecords|
43
                                                                                                               '|header| |header|))
44
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
45
                                                                                                               (IF (EQ
46
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
47
                                                                                                                    T)
48
                                                                                                                   (|file-Constructor|
49
                                                                                                                    EOL
50
                                                                                                                    |filerecords|
51
                                                                                                                    |header|)
52
                                                                                                                   (IF (EQ
53
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
54
                                                                                                                        'CONS)
55
                                                                                                                       (CONS '|file|
56
                                                                                                                             (DELETE
57
                                                                                                                              NIL
58
                                                                                                                              (LIST
59
                                                                                                                               EOL
60
                                                                                                                               |filerecords|
61
                                                                                                                               |header|)))
62
                                                                                                                       '|file|))))
63
                                                                                                          (ATN-PARSER::SUCCEED
64
                                                                                                           ATN-PARSER::INDEX
65
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
66
                                            (|file/fail.3| (ATN-PARSER::INDEX)
67
                                              (ATN-PARSER:%ATN-NODE-BLOCK |file/fail.3|
68
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
69
                                            (|file/file.2.4| (ATN-PARSER::INDEX)
70
                                              (ATN-PARSER:%ATN-NODE-BLOCK |file/file.2.4|
71
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |filerecords|)
72
                                                                                                      (MULTIPLE-VALUE-BIND
73
                                                                                                          (ATN-PARSER::RESULT
74
                                                                                                           ATN-PARSER::RESULT-INDEX
75
                                                                                                           ATN-PARSER::SUCCESS)
76
                                                                                                          (|filerecords|
77
                                                                                                           ATN-PARSER::INDEX)
78
                                                                                                        (COND
79
                                                                                                         (ATN-PARSER::SUCCESS
80
                                                                                                          (WHEN ATN-PARSER::RESULT
81
                                                                                                            (SETF |filerecords|
82
                                                                                                                    ATN-PARSER::RESULT))
83
                                                                                                          (|file.2|
84
                                                                                                           ATN-PARSER::RESULT-INDEX))
85
                                                                                                         (T
86
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
87
                                                                                                                  '|filerecords|)
88
                                                                                                          (|file.2|
89
                                                                                                           ATN-PARSER::INDEX)))))))
90
                                            (|file/file/file.2.4.5| (ATN-PARSER::INDEX)
91
                                              (ATN-PARSER:%ATN-NODE-BLOCK |file/file/file.2.4.5|
92
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |header|)
93
                                                                                                      (MULTIPLE-VALUE-BIND
94
                                                                                                          (ATN-PARSER::RESULT
95
                                                                                                           ATN-PARSER::RESULT-INDEX
96
                                                                                                           ATN-PARSER::SUCCESS)
97
                                                                                                          (|header|
98
                                                                                                           ATN-PARSER::INDEX)
99
                                                                                                        (COND
100
                                                                                                         (ATN-PARSER::SUCCESS
101
                                                                                                          (WHEN ATN-PARSER::RESULT
102
                                                                                                            (SETF |header|
103
                                                                                                                    ATN-PARSER::RESULT))
104
                                                                                                          (|file/file/file.2.4.6|
105
                                                                                                           ATN-PARSER::RESULT-INDEX))
106
                                                                                                         (T
107
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
108
                                                                                                                  '|header|)
109
                                                                                                          NIL))))))
110
                                            (|file/file/file.2.4.6| (ATN-PARSER::INDEX)
111
                                              (ATN-PARSER:%ATN-NODE-BLOCK |file/file/file.2.4.6|
112
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH EOL)
113
                                                                                                      (MULTIPLE-VALUE-BIND
114
                                                                                                          (ATN-PARSER::RESULT
115
                                                                                                           ATN-PARSER::RESULT-INDEX
116
                                                                                                           ATN-PARSER::SUCCESS)
117
                                                                                                          (EOL ATN-PARSER::INDEX)
118
                                                                                                        (COND
119
                                                                                                         (ATN-PARSER::SUCCESS
120
                                                                                                          (WHEN ATN-PARSER::RESULT
121
                                                                                                            (SETF EOL
122
                                                                                                                    ATN-PARSER::RESULT))
123
                                                                                                          (|file/file.2.4|
124
                                                                                                           ATN-PARSER::RESULT-INDEX))
125
                                                                                                         (T
126
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
127
                                                                                                                  'EOL)
128
                                                                                                          NIL))))))
129
                                            (|file/start.1| (ATN-PARSER::INDEX)
130
                                              (ATN-PARSER:%ATN-NODE-BLOCK |file/start.1|
131
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK
132
                                                                           (ATN-PARSER::JUMP |file/file/file.2.4.5|)
133
                                                                           (|file/file/file.2.4.5| ATN-PARSER::INDEX))
134
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK
135
                                                                           (ATN-PARSER::JUMP |file/file.2.4|)
136
                                                                           (|file/file.2.4| ATN-PARSER::INDEX)))))
137
                                     (DECLARE
138
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |file.2| |file/fail.3| |file/file.2.4|
139
                                       |file/file/file.2.4.5| |file/file/file.2.4.6| |file/start.1|))
140
                                     (|file/start.1| ATN-PARSER::INDEX)
141
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
142
                                     NIL
143
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
144
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|file| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
145
 (PROGN
146
  (DEFVAR |filerecords-INDEX|)
147
  (DEFUN |filerecords| (ATN-PARSER::INDEX &AUX (|filerecords| NIL) (|record| NIL))
148
    "{1a} filerecords ::= record filerecords?
149
 (ORG.DATAGRAPH.CSV::|filerecords| ORG.DATAGRAPH.CSV::|record|)"
150
    (DECLARE (SPECIAL |filerecords-INDEX|))
151
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |filerecords-INDEX| ATN-PARSER:*ATN-LEVEL))
152
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
153
    (IF (< |filerecords-INDEX| ATN-PARSER::INDEX)
154
        (LET ((|filerecords-INDEX| ATN-PARSER::INDEX)
155
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
156
              (ATN-PARSER:*ATN-STACK (CONS '|filerecords| ATN-PARSER:*ATN-STACK)))
157
          (DECLARE (SPECIAL |filerecords-INDEX|))
158
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
159
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
160
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
161
            (ATN-PARSER:%ATN-BLOCK |filerecords|
162
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
163
                                              (SETF ATN-PARSER:*ATN-TERM* '|filerecords|)
164
                                              (RETURN-FROM |filerecords| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
165
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
166
                                              (RETURN-FROM |filerecords| (VALUES NIL ATN-PARSER::INDEX NIL)))
167
                                            (|filerecords.2| (ATN-PARSER::INDEX)
168
                                              (ATN-PARSER:%ATN-NODE-BLOCK |filerecords.2|
169
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |filerecords|)
170
                                                                                                      (WHEN T
171
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
172
                                                                                                                '|filerecords|)
173
                                                                                                        (ATN-PARSER:%ATN-TRACE
174
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
175
                                                                                                         '|filerecords|
176
                                                                                                         ATN-PARSER::INDEX
177
                                                                                                         (LIST '|filerecords|
178
                                                                                                               |filerecords|
179
                                                                                                               '|record| |record|))
180
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
181
                                                                                                               (IF (EQ
182
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
183
                                                                                                                    T)
184
                                                                                                                   (|filerecords-Constructor|
185
                                                                                                                    |filerecords|
186
                                                                                                                    |record|)
187
                                                                                                                   (IF (EQ
188
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
189
                                                                                                                        'CONS)
190
                                                                                                                       (CONS
191
                                                                                                                        '|filerecords|
192
                                                                                                                        (DELETE NIL
193
                                                                                                                                (LIST
194
                                                                                                                                 |filerecords|
195
                                                                                                                                 |record|)))
196
                                                                                                                       '|filerecords|))))
197
                                                                                                          (ATN-PARSER::SUCCEED
198
                                                                                                           ATN-PARSER::INDEX
199
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
200
                                            (|filerecords/fail.3| (ATN-PARSER::INDEX)
201
                                              (ATN-PARSER:%ATN-NODE-BLOCK |filerecords/fail.3|
202
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
203
                                            (|filerecords/filerecords.2.4| (ATN-PARSER::INDEX)
204
                                              (ATN-PARSER:%ATN-NODE-BLOCK |filerecords/filerecords.2.4|
205
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |filerecords|)
206
                                                                                                      (MULTIPLE-VALUE-BIND
207
                                                                                                          (ATN-PARSER::RESULT
208
                                                                                                           ATN-PARSER::RESULT-INDEX
209
                                                                                                           ATN-PARSER::SUCCESS)
210
                                                                                                          (|filerecords|
211
                                                                                                           ATN-PARSER::INDEX)
212
                                                                                                        (COND
213
                                                                                                         (ATN-PARSER::SUCCESS
214
                                                                                                          (WHEN ATN-PARSER::RESULT
215
                                                                                                            (SETF |filerecords|
216
                                                                                                                    ATN-PARSER::RESULT))
217
                                                                                                          (|filerecords.2|
218
                                                                                                           ATN-PARSER::RESULT-INDEX))
219
                                                                                                         (T
220
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
221
                                                                                                                  '|filerecords|)
222
                                                                                                          (|filerecords.2|
223
                                                                                                           ATN-PARSER::INDEX)))))))
224
                                            (|filerecords/start.1| (ATN-PARSER::INDEX)
225
                                              (ATN-PARSER:%ATN-NODE-BLOCK |filerecords/start.1|
226
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |record|)
227
                                                                                                      (MULTIPLE-VALUE-BIND
228
                                                                                                          (ATN-PARSER::RESULT
229
                                                                                                           ATN-PARSER::RESULT-INDEX
230
                                                                                                           ATN-PARSER::SUCCESS)
231
                                                                                                          (|record|
232
                                                                                                           ATN-PARSER::INDEX)
233
                                                                                                        (COND
234
                                                                                                         (ATN-PARSER::SUCCESS
235
                                                                                                          (WHEN ATN-PARSER::RESULT
236
                                                                                                            (SETF |record|
237
                                                                                                                    ATN-PARSER::RESULT))
238
                                                                                                          (|filerecords/filerecords.2.4|
239
                                                                                                           ATN-PARSER::RESULT-INDEX))
240
                                                                                                         (T
241
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
242
                                                                                                                  '|record|)
243
                                                                                                          (|filerecords/fail.3|
244
                                                                                                           ATN-PARSER::INDEX))))))))
245
                                     (DECLARE
246
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |filerecords.2| |filerecords/fail.3|
247
                                       |filerecords/filerecords.2.4| |filerecords/start.1|))
248
                                     (|filerecords/start.1| ATN-PARSER::INDEX)
249
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
250
                                     NIL
251
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
252
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|filerecords| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
253
 (PROGN
254
  (DEFVAR |header-INDEX|)
255
  (DEFUN |header| (ATN-PARSER::INDEX &AUX (COMMA NIL) (|header| NIL) (|name| NIL))
256
    "{2 } header ::= name (COMMA header)?
257
 (ORG.DATAGRAPH.CSV::COMMA ORG.DATAGRAPH.CSV::|header| ORG.DATAGRAPH.CSV::|name|)"
258
    (DECLARE (SPECIAL |header-INDEX|))
259
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |header-INDEX| ATN-PARSER:*ATN-LEVEL))
260
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
261
    (IF (< |header-INDEX| ATN-PARSER::INDEX)
262
        (LET ((|header-INDEX| ATN-PARSER::INDEX)
263
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
264
              (ATN-PARSER:*ATN-STACK (CONS '|header| ATN-PARSER:*ATN-STACK)))
265
          (DECLARE (SPECIAL |header-INDEX|))
266
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
267
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
268
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
269
            (ATN-PARSER:%ATN-BLOCK |header|
270
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
271
                                              (SETF ATN-PARSER:*ATN-TERM* '|header|)
272
                                              (RETURN-FROM |header| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
273
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
274
                                              (RETURN-FROM |header| (VALUES NIL ATN-PARSER::INDEX NIL)))
275
                                            (|header.2| (ATN-PARSER::INDEX)
276
                                              (ATN-PARSER:%ATN-NODE-BLOCK |header.2|
277
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |header|)
278
                                                                                                      (WHEN T
279
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
280
                                                                                                                '|header|)
281
                                                                                                        (ATN-PARSER:%ATN-TRACE
282
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
283
                                                                                                         '|header| ATN-PARSER::INDEX
284
                                                                                                         (LIST 'COMMA COMMA
285
                                                                                                               '|header| |header|
286
                                                                                                               '|name| |name|))
287
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
288
                                                                                                               (IF (EQ
289
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
290
                                                                                                                    T)
291
                                                                                                                   (|header-Constructor|
292
                                                                                                                    COMMA |header|
293
                                                                                                                    |name|)
294
                                                                                                                   (IF (EQ
295
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
296
                                                                                                                        'CONS)
297
                                                                                                                       (CONS
298
                                                                                                                        '|header|
299
                                                                                                                        (DELETE NIL
300
                                                                                                                                (LIST
301
                                                                                                                                 COMMA
302
                                                                                                                                 |header|
303
                                                                                                                                 |name|)))
304
                                                                                                                       '|header|))))
305
                                                                                                          (ATN-PARSER::SUCCEED
306
                                                                                                           ATN-PARSER::INDEX
307
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
308
                                            (|header/fail.3| (ATN-PARSER::INDEX)
309
                                              (ATN-PARSER:%ATN-NODE-BLOCK |header/fail.3|
310
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
311
                                            (|header/header.2.4| (ATN-PARSER::INDEX)
312
                                              (ATN-PARSER:%ATN-NODE-BLOCK |header/header.2.4|
313
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK
314
                                                                           (ATN-PARSER::JUMP |header/header.2.5|)
315
                                                                           (|header/header.2.5| ATN-PARSER::INDEX))
316
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (ATN-PARSER::JUMP |header.2|)
317
                                                                                                      (|header.2|
318
                                                                                                       ATN-PARSER::INDEX))))
319
                                            (|header/header.2.5| (ATN-PARSER::INDEX)
320
                                              (ATN-PARSER:%ATN-NODE-BLOCK |header/header.2.5|
321
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST COMMA)
322
                                                                                                      (COND
323
                                                                                                       ((IS-COMMA
324
                                                                                                         ATN-PARSER::|item|)
325
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
326
                                                                                                                'COMMA)
327
                                                                                                        (SETF COMMA
328
                                                                                                                (IF (EQ
329
                                                                                                                     ATN-PARSER:*ATN-REDUCE*
330
                                                                                                                     T)
331
                                                                                                                    (ATN-PARSER:ATN-REDUCE-ITEM
332
                                                                                                                     #'|COMMA-Constructor|
333
                                                                                                                     ATN-PARSER::|item|)
334
                                                                                                                    (IF (EQ
335
                                                                                                                         ATN-PARSER:*ATN-REDUCE*
336
                                                                                                                         'CONS)
337
                                                                                                                        (LIST 'COMMA
338
                                                                                                                              ATN-PARSER::|item|)
339
                                                                                                                        'COMMA)))
340
                                                                                                        (|header/header.2.6|
341
                                                                                                         (1+ ATN-PARSER::INDEX)))
342
                                                                                                       (T
343
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
344
                                                                                                                'COMMA)
345
                                                                                                        NIL)))))
346
                                            (|header/header.2.6| (ATN-PARSER::INDEX)
347
                                              (ATN-PARSER:%ATN-NODE-BLOCK |header/header.2.6|
348
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |header|)
349
                                                                                                      (MULTIPLE-VALUE-BIND
350
                                                                                                          (ATN-PARSER::RESULT
351
                                                                                                           ATN-PARSER::RESULT-INDEX
352
                                                                                                           ATN-PARSER::SUCCESS)
353
                                                                                                          (|header|
354
                                                                                                           ATN-PARSER::INDEX)
355
                                                                                                        (COND
356
                                                                                                         (ATN-PARSER::SUCCESS
357
                                                                                                          (WHEN ATN-PARSER::RESULT
358
                                                                                                            (SETF |header|
359
                                                                                                                    ATN-PARSER::RESULT))
360
                                                                                                          (|header.2|
361
                                                                                                           ATN-PARSER::RESULT-INDEX))
362
                                                                                                         (T
363
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
364
                                                                                                                  '|header|)
365
                                                                                                          NIL))))))
366
                                            (|header/start.1| (ATN-PARSER::INDEX)
367
                                              (ATN-PARSER:%ATN-NODE-BLOCK |header/start.1|
368
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |name|)
369
                                                                                                      (MULTIPLE-VALUE-BIND
370
                                                                                                          (ATN-PARSER::RESULT
371
                                                                                                           ATN-PARSER::RESULT-INDEX
372
                                                                                                           ATN-PARSER::SUCCESS)
373
                                                                                                          (|name| ATN-PARSER::INDEX)
374
                                                                                                        (COND
375
                                                                                                         (ATN-PARSER::SUCCESS
376
                                                                                                          (WHEN ATN-PARSER::RESULT
377
                                                                                                            (SETF |name|
378
                                                                                                                    ATN-PARSER::RESULT))
379
                                                                                                          (|header/header.2.4|
380
                                                                                                           ATN-PARSER::RESULT-INDEX))
381
                                                                                                         (T
382
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
383
                                                                                                                  '|name|)
384
                                                                                                          (|header/fail.3|
385
                                                                                                           ATN-PARSER::INDEX))))))))
386
                                     (DECLARE
387
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |header.2| |header/fail.3| |header/header.2.4|
388
                                       |header/header.2.5| |header/header.2.6| |header/start.1|))
389
                                     (|header/start.1| ATN-PARSER::INDEX)
390
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
391
                                     NIL
392
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
393
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|header| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
394
 (PROGN
395
  (DEFVAR |record-INDEX|)
396
  (DEFUN |record| (ATN-PARSER::INDEX &AUX (EOL NIL) (|recordfields| NIL))
397
    "{3 } record ::= recordfields EOL
398
 (ORG.DATAGRAPH.CSV::EOL ORG.DATAGRAPH.CSV::|recordfields|)"
399
    (DECLARE (SPECIAL |record-INDEX|))
400
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |record-INDEX| ATN-PARSER:*ATN-LEVEL))
401
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
402
    (IF (< |record-INDEX| ATN-PARSER::INDEX)
403
        (LET ((|record-INDEX| ATN-PARSER::INDEX)
404
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
405
              (ATN-PARSER:*ATN-STACK (CONS '|record| ATN-PARSER:*ATN-STACK)))
406
          (DECLARE (SPECIAL |record-INDEX|))
407
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
408
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
409
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
410
            (ATN-PARSER:%ATN-BLOCK |record|
411
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
412
                                              (SETF ATN-PARSER:*ATN-TERM* '|record|)
413
                                              (RETURN-FROM |record| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
414
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
415
                                              (RETURN-FROM |record| (VALUES NIL ATN-PARSER::INDEX NIL)))
416
                                            (|record.2| (ATN-PARSER::INDEX)
417
                                              (ATN-PARSER:%ATN-NODE-BLOCK |record.2|
418
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |record|)
419
                                                                                                      (WHEN T
420
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
421
                                                                                                                '|record|)
422
                                                                                                        (ATN-PARSER:%ATN-TRACE
423
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
424
                                                                                                         '|record| ATN-PARSER::INDEX
425
                                                                                                         (LIST 'EOL EOL
426
                                                                                                               '|recordfields|
427
                                                                                                               |recordfields|))
428
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
429
                                                                                                               (IF (EQ
430
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
431
                                                                                                                    T)
432
                                                                                                                   (|record-Constructor|
433
                                                                                                                    EOL
434
                                                                                                                    |recordfields|)
435
                                                                                                                   (IF (EQ
436
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
437
                                                                                                                        'CONS)
438
                                                                                                                       (CONS
439
                                                                                                                        '|record|
440
                                                                                                                        (DELETE NIL
441
                                                                                                                                (LIST
442
                                                                                                                                 EOL
443
                                                                                                                                 |recordfields|)))
444
                                                                                                                       '|record|))))
445
                                                                                                          (ATN-PARSER::SUCCEED
446
                                                                                                           ATN-PARSER::INDEX
447
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
448
                                            (|record/fail.3| (ATN-PARSER::INDEX)
449
                                              (ATN-PARSER:%ATN-NODE-BLOCK |record/fail.3|
450
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
451
                                            (|record/record.2.4| (ATN-PARSER::INDEX)
452
                                              (ATN-PARSER:%ATN-NODE-BLOCK |record/record.2.4|
453
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH EOL)
454
                                                                                                      (MULTIPLE-VALUE-BIND
455
                                                                                                          (ATN-PARSER::RESULT
456
                                                                                                           ATN-PARSER::RESULT-INDEX
457
                                                                                                           ATN-PARSER::SUCCESS)
458
                                                                                                          (EOL ATN-PARSER::INDEX)
459
                                                                                                        (COND
460
                                                                                                         (ATN-PARSER::SUCCESS
461
                                                                                                          (WHEN ATN-PARSER::RESULT
462
                                                                                                            (SETF EOL
463
                                                                                                                    ATN-PARSER::RESULT))
464
                                                                                                          (|record.2|
465
                                                                                                           ATN-PARSER::RESULT-INDEX))
466
                                                                                                         (T
467
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
468
                                                                                                                  'EOL)
469
                                                                                                          (|record/fail.3|
470
                                                                                                           ATN-PARSER::INDEX)))))))
471
                                            (|record/start.1| (ATN-PARSER::INDEX)
472
                                              (ATN-PARSER:%ATN-NODE-BLOCK |record/start.1|
473
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |recordfields|)
474
                                                                                                      (MULTIPLE-VALUE-BIND
475
                                                                                                          (ATN-PARSER::RESULT
476
                                                                                                           ATN-PARSER::RESULT-INDEX
477
                                                                                                           ATN-PARSER::SUCCESS)
478
                                                                                                          (|recordfields|
479
                                                                                                           ATN-PARSER::INDEX)
480
                                                                                                        (COND
481
                                                                                                         (ATN-PARSER::SUCCESS
482
                                                                                                          (WHEN ATN-PARSER::RESULT
483
                                                                                                            (SETF |recordfields|
484
                                                                                                                    ATN-PARSER::RESULT))
485
                                                                                                          (|record/record.2.4|
486
                                                                                                           ATN-PARSER::RESULT-INDEX))
487
                                                                                                         (T
488
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
489
                                                                                                                  '|recordfields|)
490
                                                                                                          (|record/fail.3|
491
                                                                                                           ATN-PARSER::INDEX))))))))
492
                                     (DECLARE
493
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |record.2| |record/fail.3| |record/record.2.4|
494
                                       |record/start.1|))
495
                                     (|record/start.1| ATN-PARSER::INDEX)
496
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
497
                                     NIL
498
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
499
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|record| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
500
 (PROGN
501
  (DEFVAR |recordfields-INDEX|)
502
  (DEFUN |recordfields| (ATN-PARSER::INDEX &AUX (COMMA NIL) (|field| NIL) (|recordfields| NIL))
503
    "{3a} recordfields ::= field (COMMA recordfields)?
504
 (ORG.DATAGRAPH.CSV::COMMA ORG.DATAGRAPH.CSV::|field|
505
  ORG.DATAGRAPH.CSV::|recordfields|)"
506
    (DECLARE (SPECIAL |recordfields-INDEX|))
507
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |recordfields-INDEX| ATN-PARSER:*ATN-LEVEL))
508
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
509
    (IF (< |recordfields-INDEX| ATN-PARSER::INDEX)
510
        (LET ((|recordfields-INDEX| ATN-PARSER::INDEX)
511
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
512
              (ATN-PARSER:*ATN-STACK (CONS '|recordfields| ATN-PARSER:*ATN-STACK)))
513
          (DECLARE (SPECIAL |recordfields-INDEX|))
514
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
515
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
516
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
517
            (ATN-PARSER:%ATN-BLOCK |recordfields|
518
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
519
                                              (SETF ATN-PARSER:*ATN-TERM* '|recordfields|)
520
                                              (RETURN-FROM |recordfields| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
521
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
522
                                              (RETURN-FROM |recordfields| (VALUES NIL ATN-PARSER::INDEX NIL)))
523
                                            (|recordfields.2| (ATN-PARSER::INDEX)
524
                                              (ATN-PARSER:%ATN-NODE-BLOCK |recordfields.2|
525
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |recordfields|)
526
                                                                                                      (WHEN T
527
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
528
                                                                                                                '|recordfields|)
529
                                                                                                        (ATN-PARSER:%ATN-TRACE
530
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
531
                                                                                                         '|recordfields|
532
                                                                                                         ATN-PARSER::INDEX
533
                                                                                                         (LIST 'COMMA COMMA '|field|
534
                                                                                                               |field|
535
                                                                                                               '|recordfields|
536
                                                                                                               |recordfields|))
537
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
538
                                                                                                               (IF (EQ
539
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
540
                                                                                                                    T)
541
                                                                                                                   (|recordfields-Constructor|
542
                                                                                                                    COMMA |field|
543
                                                                                                                    |recordfields|)
544
                                                                                                                   (IF (EQ
545
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
546
                                                                                                                        'CONS)
547
                                                                                                                       (CONS
548
                                                                                                                        '|recordfields|
549
                                                                                                                        (DELETE NIL
550
                                                                                                                                (LIST
551
                                                                                                                                 COMMA
552
                                                                                                                                 |field|
553
                                                                                                                                 |recordfields|)))
554
                                                                                                                       '|recordfields|))))
555
                                                                                                          (ATN-PARSER::SUCCEED
556
                                                                                                           ATN-PARSER::INDEX
557
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
558
                                            (|recordfields/fail.3| (ATN-PARSER::INDEX)
559
                                              (ATN-PARSER:%ATN-NODE-BLOCK |recordfields/fail.3|
560
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
561
                                            (|recordfields/recordfields.2.4| (ATN-PARSER::INDEX)
562
                                              (ATN-PARSER:%ATN-NODE-BLOCK |recordfields/recordfields.2.4|
563
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK
564
                                                                           (ATN-PARSER::JUMP |recordfields/recordfields.2.5|)
565
                                                                           (|recordfields/recordfields.2.5| ATN-PARSER::INDEX))
566
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK
567
                                                                           (ATN-PARSER::JUMP |recordfields.2|)
568
                                                                           (|recordfields.2| ATN-PARSER::INDEX))))
569
                                            (|recordfields/recordfields.2.5| (ATN-PARSER::INDEX)
570
                                              (ATN-PARSER:%ATN-NODE-BLOCK |recordfields/recordfields.2.5|
571
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST COMMA)
572
                                                                                                      (COND
573
                                                                                                       ((IS-COMMA
574
                                                                                                         ATN-PARSER::|item|)
575
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
576
                                                                                                                'COMMA)
577
                                                                                                        (SETF COMMA
578
                                                                                                                (IF (EQ
579
                                                                                                                     ATN-PARSER:*ATN-REDUCE*
580
                                                                                                                     T)
581
                                                                                                                    (ATN-PARSER:ATN-REDUCE-ITEM
582
                                                                                                                     #'|COMMA-Constructor|
583
                                                                                                                     ATN-PARSER::|item|)
584
                                                                                                                    (IF (EQ
585
                                                                                                                         ATN-PARSER:*ATN-REDUCE*
586
                                                                                                                         'CONS)
587
                                                                                                                        (LIST 'COMMA
588
                                                                                                                              ATN-PARSER::|item|)
589
                                                                                                                        'COMMA)))
590
                                                                                                        (|recordfields/recordfields.2.6|
591
                                                                                                         (1+ ATN-PARSER::INDEX)))
592
                                                                                                       (T
593
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
594
                                                                                                                'COMMA)
595
                                                                                                        NIL)))))
596
                                            (|recordfields/recordfields.2.6| (ATN-PARSER::INDEX)
597
                                              (ATN-PARSER:%ATN-NODE-BLOCK |recordfields/recordfields.2.6|
598
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |recordfields|)
599
                                                                                                      (MULTIPLE-VALUE-BIND
600
                                                                                                          (ATN-PARSER::RESULT
601
                                                                                                           ATN-PARSER::RESULT-INDEX
602
                                                                                                           ATN-PARSER::SUCCESS)
603
                                                                                                          (|recordfields|
604
                                                                                                           ATN-PARSER::INDEX)
605
                                                                                                        (COND
606
                                                                                                         (ATN-PARSER::SUCCESS
607
                                                                                                          (WHEN ATN-PARSER::RESULT
608
                                                                                                            (SETF |recordfields|
609
                                                                                                                    ATN-PARSER::RESULT))
610
                                                                                                          (|recordfields.2|
611
                                                                                                           ATN-PARSER::RESULT-INDEX))
612
                                                                                                         (T
613
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
614
                                                                                                                  '|recordfields|)
615
                                                                                                          NIL))))))
616
                                            (|recordfields/start.1| (ATN-PARSER::INDEX)
617
                                              (ATN-PARSER:%ATN-NODE-BLOCK |recordfields/start.1|
618
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |field|)
619
                                                                                                      (MULTIPLE-VALUE-BIND
620
                                                                                                          (ATN-PARSER::RESULT
621
                                                                                                           ATN-PARSER::RESULT-INDEX
622
                                                                                                           ATN-PARSER::SUCCESS)
623
                                                                                                          (|field|
624
                                                                                                           ATN-PARSER::INDEX)
625
                                                                                                        (COND
626
                                                                                                         (ATN-PARSER::SUCCESS
627
                                                                                                          (WHEN ATN-PARSER::RESULT
628
                                                                                                            (SETF |field|
629
                                                                                                                    ATN-PARSER::RESULT))
630
                                                                                                          (|recordfields/recordfields.2.4|
631
                                                                                                           ATN-PARSER::RESULT-INDEX))
632
                                                                                                         (T
633
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
634
                                                                                                                  '|field|)
635
                                                                                                          (|recordfields/fail.3|
636
                                                                                                           ATN-PARSER::INDEX))))))))
637
                                     (DECLARE
638
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |recordfields.2| |recordfields/fail.3|
639
                                       |recordfields/recordfields.2.4| |recordfields/recordfields.2.5|
640
                                       |recordfields/recordfields.2.6| |recordfields/start.1|))
641
                                     (|recordfields/start.1| ATN-PARSER::INDEX)
642
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
643
                                     NIL
644
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
645
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|recordfields| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
646
 (PROGN
647
  (DEFVAR |name-INDEX|)
648
  (DEFUN |name| (ATN-PARSER::INDEX &AUX (|field| NIL))
649
    "{4 } name ::= field
650
 (ORG.DATAGRAPH.CSV::|field|)"
651
    (DECLARE (SPECIAL |name-INDEX|))
652
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |name-INDEX| ATN-PARSER:*ATN-LEVEL))
653
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
654
    (IF (< |name-INDEX| ATN-PARSER::INDEX)
655
        (LET ((|name-INDEX| ATN-PARSER::INDEX)
656
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
657
              (ATN-PARSER:*ATN-STACK (CONS '|name| ATN-PARSER:*ATN-STACK)))
658
          (DECLARE (SPECIAL |name-INDEX|))
659
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
660
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
661
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
662
            (ATN-PARSER:%ATN-BLOCK |name|
663
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
664
                                              (SETF ATN-PARSER:*ATN-TERM* '|name|)
665
                                              (RETURN-FROM |name| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
666
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
667
                                              (RETURN-FROM |name| (VALUES NIL ATN-PARSER::INDEX NIL)))
668
                                            (|name.2| (ATN-PARSER::INDEX)
669
                                              (ATN-PARSER:%ATN-NODE-BLOCK |name.2|
670
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |name|)
671
                                                                                                      (WHEN T
672
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
673
                                                                                                                '|name|)
674
                                                                                                        (ATN-PARSER:%ATN-TRACE
675
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
676
                                                                                                         '|name| ATN-PARSER::INDEX
677
                                                                                                         (LIST '|field| |field|))
678
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
679
                                                                                                               (IF (EQ
680
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
681
                                                                                                                    T)
682
                                                                                                                   (|name-Constructor|
683
                                                                                                                    |field|)
684
                                                                                                                   (IF (EQ
685
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
686
                                                                                                                        'CONS)
687
                                                                                                                       (CONS '|name|
688
                                                                                                                             (DELETE
689
                                                                                                                              NIL
690
                                                                                                                              (LIST
691
                                                                                                                               |field|)))
692
                                                                                                                       '|name|))))
693
                                                                                                          (ATN-PARSER::SUCCEED
694
                                                                                                           ATN-PARSER::INDEX
695
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
696
                                            (|name/fail.3| (ATN-PARSER::INDEX)
697
                                              (ATN-PARSER:%ATN-NODE-BLOCK |name/fail.3|
698
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
699
                                            (|name/start.1| (ATN-PARSER::INDEX)
700
                                              (ATN-PARSER:%ATN-NODE-BLOCK |name/start.1|
701
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |field|)
702
                                                                                                      (MULTIPLE-VALUE-BIND
703
                                                                                                          (ATN-PARSER::RESULT
704
                                                                                                           ATN-PARSER::RESULT-INDEX
705
                                                                                                           ATN-PARSER::SUCCESS)
706
                                                                                                          (|field|
707
                                                                                                           ATN-PARSER::INDEX)
708
                                                                                                        (COND
709
                                                                                                         (ATN-PARSER::SUCCESS
710
                                                                                                          (WHEN ATN-PARSER::RESULT
711
                                                                                                            (SETF |field|
712
                                                                                                                    ATN-PARSER::RESULT))
713
                                                                                                          (|name.2|
714
                                                                                                           ATN-PARSER::RESULT-INDEX))
715
                                                                                                         (T
716
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
717
                                                                                                                  '|field|)
718
                                                                                                          (|name/fail.3|
719
                                                                                                           ATN-PARSER::INDEX))))))))
720
                                     (DECLARE (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |name.2| |name/fail.3| |name/start.1|))
721
                                     (|name/start.1| ATN-PARSER::INDEX)
722
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
723
                                     NIL
724
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
725
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|name| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
726
 (PROGN
727
  (DEFVAR |field-INDEX|)
728
  (DEFUN |field| (ATN-PARSER::INDEX &AUX (|escaped| NIL) (|nonescaped| NIL))
729
    "{5 } field ::= (escaped | nonescaped)
730
 (ORG.DATAGRAPH.CSV::|escaped| ORG.DATAGRAPH.CSV::|nonescaped|)"
731
    (DECLARE (SPECIAL |field-INDEX|))
732
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |field-INDEX| ATN-PARSER:*ATN-LEVEL))
733
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
734
    (IF (< |field-INDEX| ATN-PARSER::INDEX)
735
        (LET ((|field-INDEX| ATN-PARSER::INDEX)
736
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
737
              (ATN-PARSER:*ATN-STACK (CONS '|field| ATN-PARSER:*ATN-STACK)))
738
          (DECLARE (SPECIAL |field-INDEX|))
739
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
740
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
741
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
742
            (ATN-PARSER:%ATN-BLOCK |field|
743
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
744
                                              (SETF ATN-PARSER:*ATN-TERM* '|field|)
745
                                              (RETURN-FROM |field| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
746
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
747
                                              (RETURN-FROM |field| (VALUES NIL ATN-PARSER::INDEX NIL)))
748
                                            (|field.2| (ATN-PARSER::INDEX)
749
                                              (ATN-PARSER:%ATN-NODE-BLOCK |field.2|
750
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |field|)
751
                                                                                                      (WHEN T
752
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
753
                                                                                                                '|field|)
754
                                                                                                        (ATN-PARSER:%ATN-TRACE
755
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
756
                                                                                                         '|field| ATN-PARSER::INDEX
757
                                                                                                         (LIST '|escaped| |escaped|
758
                                                                                                               '|nonescaped|
759
                                                                                                               |nonescaped|))
760
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
761
                                                                                                               (IF (EQ
762
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
763
                                                                                                                    T)
764
                                                                                                                   (|field-Constructor|
765
                                                                                                                    |escaped|
766
                                                                                                                    |nonescaped|)
767
                                                                                                                   (IF (EQ
768
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
769
                                                                                                                        'CONS)
770
                                                                                                                       (CONS
771
                                                                                                                        '|field|
772
                                                                                                                        (DELETE NIL
773
                                                                                                                                (LIST
774
                                                                                                                                 |escaped|
775
                                                                                                                                 |nonescaped|)))
776
                                                                                                                       '|field|))))
777
                                                                                                          (ATN-PARSER::SUCCEED
778
                                                                                                           ATN-PARSER::INDEX
779
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
780
                                            (|field/fail.3| (ATN-PARSER::INDEX)
781
                                              (ATN-PARSER:%ATN-NODE-BLOCK |field/fail.3|
782
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
783
                                            (|field/start.1| (ATN-PARSER::INDEX)
784
                                              (ATN-PARSER:%ATN-NODE-BLOCK |field/start.1|
785
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK OR
786
                                                                                                      (OR
787
                                                                                                       (ATN-PARSER:%ATN-EDGE-BLOCK
788
                                                                                                        (PUSH |escaped|)
789
                                                                                                        (MULTIPLE-VALUE-BIND
790
                                                                                                            (ATN-PARSER::RESULT
791
                                                                                                             ATN-PARSER::RESULT-INDEX
792
                                                                                                             ATN-PARSER::SUCCESS)
793
                                                                                                            (|escaped|
794
                                                                                                             ATN-PARSER::INDEX)
795
                                                                                                          (COND
796
                                                                                                           (ATN-PARSER::SUCCESS
797
                                                                                                            (WHEN ATN-PARSER::RESULT
798
                                                                                                              (SETF |escaped|
799
                                                                                                                      ATN-PARSER::RESULT))
800
                                                                                                            (|field.2|
801
                                                                                                             ATN-PARSER::RESULT-INDEX))
802
                                                                                                           (T
803
                                                                                                            (SETF ATN-PARSER:*ATN-TERM?*
804
                                                                                                                    '|escaped|)
805
                                                                                                            NIL))))
806
                                                                                                       (ATN-PARSER:%ATN-EDGE-BLOCK
807
                                                                                                        (PUSH |nonescaped|)
808
                                                                                                        (MULTIPLE-VALUE-BIND
809
                                                                                                            (ATN-PARSER::RESULT
810
                                                                                                             ATN-PARSER::RESULT-INDEX
811
                                                                                                             ATN-PARSER::SUCCESS)
812
                                                                                                            (|nonescaped|
813
                                                                                                             ATN-PARSER::INDEX)
814
                                                                                                          (COND
815
                                                                                                           (ATN-PARSER::SUCCESS
816
                                                                                                            (WHEN ATN-PARSER::RESULT
817
                                                                                                              (SETF |nonescaped|
818
                                                                                                                      ATN-PARSER::RESULT))
819
                                                                                                            (|field.2|
820
                                                                                                             ATN-PARSER::RESULT-INDEX))
821
                                                                                                           (T
822
                                                                                                            (SETF ATN-PARSER:*ATN-TERM?*
823
                                                                                                                    '|nonescaped|)
824
                                                                                                            NIL))))
825
                                                                                                       (|field/fail.3|
826
                                                                                                        ATN-PARSER::INDEX))))))
827
                                     (DECLARE
828
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |field.2| |field/fail.3| |field/start.1|))
829
                                     (|field/start.1| ATN-PARSER::INDEX)
830
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
831
                                     NIL
832
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
833
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|field| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
834
 (PROGN
835
  (DEFVAR |escaped-INDEX|)
836
  (DEFUN |escaped| (ATN-PARSER::INDEX &AUX (DQUOTE1 NIL) (DQUOTE2 NIL) (|escapedtextdata| NIL) (WS NIL))
837
    "{6 } escaped ::= WS* DQUOTE1 escapedtextdata* DQUOTE2 WS*
838
 (ORG.DATAGRAPH.CSV::DQUOTE1 ORG.DATAGRAPH.CSV::DQUOTE2
839
  ORG.DATAGRAPH.CSV::|escapedtextdata| ORG.DATAGRAPH.CSV::WS)"
840
    (DECLARE (SPECIAL |escaped-INDEX|))
841
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |escaped-INDEX| ATN-PARSER:*ATN-LEVEL))
842
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
843
    (IF (< |escaped-INDEX| ATN-PARSER::INDEX)
844
        (LET ((|escaped-INDEX| ATN-PARSER::INDEX)
845
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
846
              (ATN-PARSER:*ATN-STACK (CONS '|escaped| ATN-PARSER:*ATN-STACK)))
847
          (DECLARE (SPECIAL |escaped-INDEX|))
848
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
849
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
850
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
851
            (ATN-PARSER:%ATN-BLOCK |escaped|
852
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
853
                                              (SETF ATN-PARSER:*ATN-TERM* '|escaped|)
854
                                              (RETURN-FROM |escaped| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
855
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
856
                                              (RETURN-FROM |escaped| (VALUES NIL ATN-PARSER::INDEX NIL)))
857
                                            (|escaped.10| (ATN-PARSER::INDEX)
858
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped.10|
859
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST WS)
860
                                                                                                      (COND
861
                                                                                                       ((IS-WS ATN-PARSER::|item|)
862
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
863
                                                                                                                'WS)
864
                                                                                                        (SETF WS
865
                                                                                                                (CONS
866
                                                                                                                 (IF (EQ
867
                                                                                                                      ATN-PARSER:*ATN-REDUCE*
868
                                                                                                                      T)
869
                                                                                                                     (ATN-PARSER:ATN-REDUCE-ITEM
870
                                                                                                                      #'|WS-Constructor|
871
                                                                                                                      ATN-PARSER::|item|)
872
                                                                                                                     (IF (EQ
873
                                                                                                                          ATN-PARSER:*ATN-REDUCE*
874
                                                                                                                          'CONS)
875
                                                                                                                         (LIST 'WS
876
                                                                                                                               ATN-PARSER::|item|)
877
                                                                                                                         'WS))
878
                                                                                                                 WS))
879
                                                                                                        (|escaped.10|
880
                                                                                                         (1+ ATN-PARSER::INDEX)))
881
                                                                                                       (T
882
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
883
                                                                                                                'WS)
884
                                                                                                        (|escaped.2|
885
                                                                                                         ATN-PARSER::INDEX))))))
886
                                            (|escaped.2| (ATN-PARSER::INDEX)
887
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped.2|
888
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |escaped|)
889
                                                                                                      (WHEN T
890
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
891
                                                                                                                '|escaped|)
892
                                                                                                        (ATN-PARSER:%ATN-TRACE
893
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
894
                                                                                                         '|escaped|
895
                                                                                                         ATN-PARSER::INDEX
896
                                                                                                         (LIST 'DQUOTE1 DQUOTE1
897
                                                                                                               'DQUOTE2 DQUOTE2
898
                                                                                                               '|escapedtextdata|
899
                                                                                                               |escapedtextdata| 'WS
900
                                                                                                               WS))
901
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
902
                                                                                                               (IF (EQ
903
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
904
                                                                                                                    T)
905
                                                                                                                   (|escaped-Constructor|
906
                                                                                                                    DQUOTE1 DQUOTE2
907
                                                                                                                    |escapedtextdata|
908
                                                                                                                    WS)
909
                                                                                                                   (IF (EQ
910
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
911
                                                                                                                        'CONS)
912
                                                                                                                       (CONS
913
                                                                                                                        '|escaped|
914
                                                                                                                        (DELETE NIL
915
                                                                                                                                (LIST
916
                                                                                                                                 DQUOTE1
917
                                                                                                                                 DQUOTE2
918
                                                                                                                                 |escapedtextdata|
919
                                                                                                                                 WS)))
920
                                                                                                                       '|escaped|))))
921
                                                                                                          (ATN-PARSER::SUCCEED
922
                                                                                                           ATN-PARSER::INDEX
923
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
924
                                            (|escaped.8| (ATN-PARSER::INDEX)
925
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped.8|
926
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST WS)
927
                                                                                                      (COND
928
                                                                                                       ((IS-WS ATN-PARSER::|item|)
929
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
930
                                                                                                                'WS)
931
                                                                                                        (SETF WS
932
                                                                                                                (CONS
933
                                                                                                                 (IF (EQ
934
                                                                                                                      ATN-PARSER:*ATN-REDUCE*
935
                                                                                                                      T)
936
                                                                                                                     (ATN-PARSER:ATN-REDUCE-ITEM
937
                                                                                                                      #'|WS-Constructor|
938
                                                                                                                      ATN-PARSER::|item|)
939
                                                                                                                     (IF (EQ
940
                                                                                                                          ATN-PARSER:*ATN-REDUCE*
941
                                                                                                                          'CONS)
942
                                                                                                                         (LIST 'WS
943
                                                                                                                               ATN-PARSER::|item|)
944
                                                                                                                         'WS))
945
                                                                                                                 WS))
946
                                                                                                        (|escaped.8|
947
                                                                                                         (1+ ATN-PARSER::INDEX)))
948
                                                                                                       (T
949
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
950
                                                                                                                'WS)
951
                                                                                                        (|escaped/escaped.2.4|
952
                                                                                                         ATN-PARSER::INDEX))))))
953
                                            (|escaped.9| (ATN-PARSER::INDEX)
954
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped.9|
955
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |escapedtextdata|)
956
                                                                                                      (MULTIPLE-VALUE-BIND
957
                                                                                                          (ATN-PARSER::RESULT
958
                                                                                                           ATN-PARSER::RESULT-INDEX
959
                                                                                                           ATN-PARSER::SUCCESS)
960
                                                                                                          (|escapedtextdata|
961
                                                                                                           ATN-PARSER::INDEX)
962
                                                                                                        (COND
963
                                                                                                         (ATN-PARSER::SUCCESS
964
                                                                                                          (WHEN ATN-PARSER::RESULT
965
                                                                                                            (SETF |escapedtextdata|
966
                                                                                                                    (CONS
967
                                                                                                                     ATN-PARSER::RESULT
968
                                                                                                                     |escapedtextdata|)))
969
                                                                                                          (|escaped.9|
970
                                                                                                           ATN-PARSER::RESULT-INDEX))
971
                                                                                                         (T
972
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
973
                                                                                                                  '|escapedtextdata|)
974
                                                                                                          (|escaped/escaped.2.6|
975
                                                                                                           ATN-PARSER::INDEX)))))))
976
                                            (|escaped/escaped.2.4| (ATN-PARSER::INDEX)
977
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped/escaped.2.4|
978
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (ATN-PARSER::CAT DQUOTE1)
979
                                                                                                      (COND
980
                                                                                                       ((IS-DQUOTE1
981
                                                                                                         ATN-PARSER::|item|)
982
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
983
                                                                                                                'DQUOTE1)
984
                                                                                                        (SETF DQUOTE1
985
                                                                                                                (IF (EQ
986
                                                                                                                     ATN-PARSER:*ATN-REDUCE*
987
                                                                                                                     T)
988
                                                                                                                    (ATN-PARSER:ATN-REDUCE-ITEM
989
                                                                                                                     #'|DQUOTE1-Constructor|
990
                                                                                                                     ATN-PARSER::|item|)
991
                                                                                                                    (IF (EQ
992
                                                                                                                         ATN-PARSER:*ATN-REDUCE*
993
                                                                                                                         'CONS)
994
                                                                                                                        (LIST
995
                                                                                                                         'DQUOTE1
996
                                                                                                                         ATN-PARSER::|item|)
997
                                                                                                                        'DQUOTE1)))
998
                                                                                                        (|escaped/escaped.2.5|
999
                                                                                                         (1+ ATN-PARSER::INDEX)))
1000
                                                                                                       (T
1001
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1002
                                                                                                                'DQUOTE1)
1003
                                                                                                        (|escaped/fail.3|
1004
                                                                                                         ATN-PARSER::INDEX))))))
1005
                                            (|escaped/escaped.2.5| (ATN-PARSER::INDEX)
1006
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped/escaped.2.5|
1007
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (PUSH |escapedtextdata|)
1008
                                                                                                      (MULTIPLE-VALUE-BIND
1009
                                                                                                          (ATN-PARSER::RESULT
1010
                                                                                                           ATN-PARSER::RESULT-INDEX
1011
                                                                                                           ATN-PARSER::SUCCESS)
1012
                                                                                                          (|escapedtextdata|
1013
                                                                                                           ATN-PARSER::INDEX)
1014
                                                                                                        (COND
1015
                                                                                                         (ATN-PARSER::SUCCESS
1016
                                                                                                          (WHEN ATN-PARSER::RESULT
1017
                                                                                                            (SETF |escapedtextdata|
1018
                                                                                                                    (CONS
1019
                                                                                                                     ATN-PARSER::RESULT
1020
                                                                                                                     |escapedtextdata|)))
1021
                                                                                                          (|escaped.9|
1022
                                                                                                           ATN-PARSER::RESULT-INDEX))
1023
                                                                                                         (T
1024
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
1025
                                                                                                                  '|escapedtextdata|)
1026
                                                                                                          (|escaped/escaped.2.6|
1027
                                                                                                           ATN-PARSER::INDEX)))))))
1028
                                            (|escaped/escaped.2.6| (ATN-PARSER::INDEX)
1029
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped/escaped.2.6|
1030
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (ATN-PARSER::CAT DQUOTE2)
1031
                                                                                                      (COND
1032
                                                                                                       ((IS-DQUOTE2
1033
                                                                                                         ATN-PARSER::|item|)
1034
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1035
                                                                                                                'DQUOTE2)
1036
                                                                                                        (SETF DQUOTE2
1037
                                                                                                                (IF (EQ
1038
                                                                                                                     ATN-PARSER:*ATN-REDUCE*
1039
                                                                                                                     T)
1040
                                                                                                                    (ATN-PARSER:ATN-REDUCE-ITEM
1041
                                                                                                                     #'|DQUOTE2-Constructor|
1042
                                                                                                                     ATN-PARSER::|item|)
1043
                                                                                                                    (IF (EQ
1044
                                                                                                                         ATN-PARSER:*ATN-REDUCE*
1045
                                                                                                                         'CONS)
1046
                                                                                                                        (LIST
1047
                                                                                                                         'DQUOTE2
1048
                                                                                                                         ATN-PARSER::|item|)
1049
                                                                                                                        'DQUOTE2)))
1050
                                                                                                        (|escaped/escaped.2.7|
1051
                                                                                                         (1+ ATN-PARSER::INDEX)))
1052
                                                                                                       (T
1053
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1054
                                                                                                                'DQUOTE2)
1055
                                                                                                        (|escaped/fail.3|
1056
                                                                                                         ATN-PARSER::INDEX))))))
1057
                                            (|escaped/escaped.2.7| (ATN-PARSER::INDEX)
1058
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped/escaped.2.7|
1059
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST WS)
1060
                                                                                                      (COND
1061
                                                                                                       ((IS-WS ATN-PARSER::|item|)
1062
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1063
                                                                                                                'WS)
1064
                                                                                                        (SETF WS
1065
                                                                                                                (CONS
1066
                                                                                                                 (IF (EQ
1067
                                                                                                                      ATN-PARSER:*ATN-REDUCE*
1068
                                                                                                                      T)
1069
                                                                                                                     (ATN-PARSER:ATN-REDUCE-ITEM
1070
                                                                                                                      #'|WS-Constructor|
1071
                                                                                                                      ATN-PARSER::|item|)
1072
                                                                                                                     (IF (EQ
1073
                                                                                                                          ATN-PARSER:*ATN-REDUCE*
1074
                                                                                                                          'CONS)
1075
                                                                                                                         (LIST 'WS
1076
                                                                                                                               ATN-PARSER::|item|)
1077
                                                                                                                         'WS))
1078
                                                                                                                 WS))
1079
                                                                                                        (|escaped.10|
1080
                                                                                                         (1+ ATN-PARSER::INDEX)))
1081
                                                                                                       (T
1082
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
1083
                                                                                                                'WS)
1084
                                                                                                        (|escaped.2|
1085
                                                                                                         ATN-PARSER::INDEX))))))
1086
                                            (|escaped/fail.3| (ATN-PARSER::INDEX)
1087
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped/fail.3|
1088
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
1089
                                            (|escaped/start.1| (ATN-PARSER::INDEX)
1090
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escaped/start.1|
1091
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST WS)
1092
                                                                                                      (COND
1093
                                                                                                       ((IS-WS ATN-PARSER::|item|)
1094
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1095
                                                                                                                'WS)
1096
                                                                                                        (SETF WS
1097
                                                                                                                (CONS
1098
                                                                                                                 (IF (EQ
1099
                                                                                                                      ATN-PARSER:*ATN-REDUCE*
1100
                                                                                                                      T)
1101
                                                                                                                     (ATN-PARSER:ATN-REDUCE-ITEM
1102
                                                                                                                      #'|WS-Constructor|
1103
                                                                                                                      ATN-PARSER::|item|)
1104
                                                                                                                     (IF (EQ
1105
                                                                                                                          ATN-PARSER:*ATN-REDUCE*
1106
                                                                                                                          'CONS)
1107
                                                                                                                         (LIST 'WS
1108
                                                                                                                               ATN-PARSER::|item|)
1109
                                                                                                                         'WS))
1110
                                                                                                                 WS))
1111
                                                                                                        (|escaped.8|
1112
                                                                                                         (1+ ATN-PARSER::INDEX)))
1113
                                                                                                       (T
1114
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
1115
                                                                                                                'WS)
1116
                                                                                                        (|escaped/escaped.2.4|
1117
                                                                                                         ATN-PARSER::INDEX)))))))
1118
                                     (DECLARE
1119
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |escaped.10| |escaped.2| |escaped.8| |escaped.9|
1120
                                       |escaped/escaped.2.4| |escaped/escaped.2.5| |escaped/escaped.2.6| |escaped/escaped.2.7|
1121
                                       |escaped/fail.3| |escaped/start.1|))
1122
                                     (|escaped/start.1| ATN-PARSER::INDEX)
1123
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
1124
                                     NIL
1125
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
1126
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|escaped| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
1127
 (PROGN
1128
  (DEFVAR |escapedtextdata-INDEX|)
1129
  (DEFUN |escapedtextdata| (ATN-PARSER::INDEX &AUX (COMMA NIL) (DQUOTEDQUOTE NIL) (TEXTDATA NIL) (WS NIL))
1130
    "{6a} escapedtextdata ::= (TEXTDATA | COMMA | WS | DQUOTEDQUOTE)
1131
 (ORG.DATAGRAPH.CSV::COMMA ORG.DATAGRAPH.CSV::DQUOTEDQUOTE
1132
  ORG.DATAGRAPH.CSV::TEXTDATA ORG.DATAGRAPH.CSV::WS)"
1133
    (DECLARE (SPECIAL |escapedtextdata-INDEX|))
1134
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |escapedtextdata-INDEX| ATN-PARSER:*ATN-LEVEL))
1135
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
1136
    (IF (< |escapedtextdata-INDEX| ATN-PARSER::INDEX)
1137
        (LET ((|escapedtextdata-INDEX| ATN-PARSER::INDEX)
1138
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
1139
              (ATN-PARSER:*ATN-STACK (CONS '|escapedtextdata| ATN-PARSER:*ATN-STACK)))
1140
          (DECLARE (SPECIAL |escapedtextdata-INDEX|))
1141
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
1142
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
1143
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
1144
            (ATN-PARSER:%ATN-BLOCK |escapedtextdata|
1145
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
1146
                                              (SETF ATN-PARSER:*ATN-TERM* '|escapedtextdata|)
1147
                                              (RETURN-FROM |escapedtextdata| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
1148
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
1149
                                              (RETURN-FROM |escapedtextdata| (VALUES NIL ATN-PARSER::INDEX NIL)))
1150
                                            (|escapedtextdata.2| (ATN-PARSER::INDEX)
1151
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escapedtextdata.2|
1152
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |escapedtextdata|)
1153
                                                                                                      (WHEN T
1154
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1155
                                                                                                                '|escapedtextdata|)
1156
                                                                                                        (ATN-PARSER:%ATN-TRACE
1157
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
1158
                                                                                                         '|escapedtextdata|
1159
                                                                                                         ATN-PARSER::INDEX
1160
                                                                                                         (LIST 'COMMA COMMA
1161
                                                                                                               'DQUOTEDQUOTE
1162
                                                                                                               DQUOTEDQUOTE
1163
                                                                                                               'TEXTDATA TEXTDATA
1164
                                                                                                               'WS WS))
1165
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
1166
                                                                                                               (IF (EQ
1167
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
1168
                                                                                                                    T)
1169
                                                                                                                   (|escapedtextdata-Constructor|
1170
                                                                                                                    COMMA
1171
                                                                                                                    DQUOTEDQUOTE
1172
                                                                                                                    TEXTDATA WS)
1173
                                                                                                                   (IF (EQ
1174
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
1175
                                                                                                                        'CONS)
1176
                                                                                                                       (CONS
1177
                                                                                                                        '|escapedtextdata|
1178
                                                                                                                        (DELETE NIL
1179
                                                                                                                                (LIST
1180
                                                                                                                                 COMMA
1181
                                                                                                                                 DQUOTEDQUOTE
1182
                                                                                                                                 TEXTDATA
1183
                                                                                                                                 WS)))
1184
                                                                                                                       '|escapedtextdata|))))
1185
                                                                                                          (ATN-PARSER::SUCCEED
1186
                                                                                                           ATN-PARSER::INDEX
1187
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
1188
                                            (|escapedtextdata/fail.3| (ATN-PARSER::INDEX)
1189
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escapedtextdata/fail.3|
1190
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
1191
                                            (|escapedtextdata/start.1| (ATN-PARSER::INDEX)
1192
                                              (ATN-PARSER:%ATN-NODE-BLOCK |escapedtextdata/start.1|
1193
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK OR
1194
                                                                                                      (OR
1195
                                                                                                       (ATN-PARSER:%ATN-EDGE-BLOCK
1196
                                                                                                        (TEST TEXTDATA)
1197
                                                                                                        (COND
1198
                                                                                                         ((IS-TEXTDATA
1199
                                                                                                           ATN-PARSER::|item|)
1200
                                                                                                          (SETF ATN-PARSER:*ATN-TERM*
1201
                                                                                                                  'TEXTDATA)
1202
                                                                                                          (SETF TEXTDATA
1203
                                                                                                                  (IF (EQ
1204
                                                                                                                       ATN-PARSER:*ATN-REDUCE*
1205
                                                                                                                       T)
1206
                                                                                                                      (ATN-PARSER:ATN-REDUCE-ITEM
1207
                                                                                                                       #'|TEXTDATA-Constructor|
1208
                                                                                                                       ATN-PARSER::|item|)
1209
                                                                                                                      (IF (EQ
1210
                                                                                                                           ATN-PARSER:*ATN-REDUCE*
1211
                                                                                                                           'CONS)
1212
                                                                                                                          (LIST
1213
                                                                                                                           'TEXTDATA
1214
                                                                                                                           ATN-PARSER::|item|)
1215
                                                                                                                          'TEXTDATA)))
1216
                                                                                                          (|escapedtextdata.2|
1217
                                                                                                           (1+ ATN-PARSER::INDEX)))
1218
                                                                                                         (T
1219
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
1220
                                                                                                                  'TEXTDATA)
1221
                                                                                                          NIL)))
1222
                                                                                                       (ATN-PARSER:%ATN-EDGE-BLOCK
1223
                                                                                                        (TEST COMMA)
1224
                                                                                                        (COND
1225
                                                                                                         ((IS-COMMA
1226
                                                                                                           ATN-PARSER::|item|)
1227
                                                                                                          (SETF ATN-PARSER:*ATN-TERM*
1228
                                                                                                                  'COMMA)
1229
                                                                                                          (SETF COMMA
1230
                                                                                                                  (IF (EQ
1231
                                                                                                                       ATN-PARSER:*ATN-REDUCE*
1232
                                                                                                                       T)
1233
                                                                                                                      (ATN-PARSER:ATN-REDUCE-ITEM
1234
                                                                                                                       #'|COMMA-Constructor|
1235
                                                                                                                       ATN-PARSER::|item|)
1236
                                                                                                                      (IF (EQ
1237
                                                                                                                           ATN-PARSER:*ATN-REDUCE*
1238
                                                                                                                           'CONS)
1239
                                                                                                                          (LIST
1240
                                                                                                                           'COMMA
1241
                                                                                                                           ATN-PARSER::|item|)
1242
                                                                                                                          'COMMA)))
1243
                                                                                                          (|escapedtextdata.2|
1244
                                                                                                           (1+ ATN-PARSER::INDEX)))
1245
                                                                                                         (T
1246
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
1247
                                                                                                                  'COMMA)
1248
                                                                                                          NIL)))
1249
                                                                                                       (ATN-PARSER:%ATN-EDGE-BLOCK
1250
                                                                                                        (TEST WS)
1251
                                                                                                        (COND
1252
                                                                                                         ((IS-WS ATN-PARSER::|item|)
1253
                                                                                                          (SETF ATN-PARSER:*ATN-TERM*
1254
                                                                                                                  'WS)
1255
                                                                                                          (SETF WS
1256
                                                                                                                  (IF (EQ
1257
                                                                                                                       ATN-PARSER:*ATN-REDUCE*
1258
                                                                                                                       T)
1259
                                                                                                                      (ATN-PARSER:ATN-REDUCE-ITEM
1260
                                                                                                                       #'|WS-Constructor|
1261
                                                                                                                       ATN-PARSER::|item|)
1262
                                                                                                                      (IF (EQ
1263
                                                                                                                           ATN-PARSER:*ATN-REDUCE*
1264
                                                                                                                           'CONS)
1265
                                                                                                                          (LIST 'WS
1266
                                                                                                                                ATN-PARSER::|item|)
1267
                                                                                                                          'WS)))
1268
                                                                                                          (|escapedtextdata.2|
1269
                                                                                                           (1+ ATN-PARSER::INDEX)))
1270
                                                                                                         (T
1271
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
1272
                                                                                                                  'WS)
1273
                                                                                                          NIL)))
1274
                                                                                                       (ATN-PARSER:%ATN-EDGE-BLOCK
1275
                                                                                                        (PUSH DQUOTEDQUOTE)
1276
                                                                                                        (MULTIPLE-VALUE-BIND
1277
                                                                                                            (ATN-PARSER::RESULT
1278
                                                                                                             ATN-PARSER::RESULT-INDEX
1279
                                                                                                             ATN-PARSER::SUCCESS)
1280
                                                                                                            (DQUOTEDQUOTE
1281
                                                                                                             ATN-PARSER::INDEX)
1282
                                                                                                          (COND
1283
                                                                                                           (ATN-PARSER::SUCCESS
1284
                                                                                                            (WHEN ATN-PARSER::RESULT
1285
                                                                                                              (SETF DQUOTEDQUOTE
1286
                                                                                                                      ATN-PARSER::RESULT))
1287
                                                                                                            (|escapedtextdata.2|
1288
                                                                                                             ATN-PARSER::RESULT-INDEX))
1289
                                                                                                           (T
1290
                                                                                                            (SETF ATN-PARSER:*ATN-TERM?*
1291
                                                                                                                    'DQUOTEDQUOTE)
1292
                                                                                                            NIL))))
1293
                                                                                                       (|escapedtextdata/fail.3|
1294
                                                                                                        ATN-PARSER::INDEX))))))
1295
                                     (DECLARE
1296
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |escapedtextdata.2| |escapedtextdata/fail.3|
1297
                                       |escapedtextdata/start.1|))
1298
                                     (|escapedtextdata/start.1| ATN-PARSER::INDEX)
1299
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
1300
                                     NIL
1301
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
1302
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|escapedtextdata| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
1303
 (PROGN
1304
  (DEFVAR DQUOTEDQUOTE-INDEX)
1305
  (DEFUN DQUOTEDQUOTE (ATN-PARSER::INDEX &AUX (DQUOTE1 NIL) (DQUOTE2 NIL))
1306
    "{6b} DQUOTEDQUOTE ::= DQUOTE1 DQUOTE2
1307
 (ORG.DATAGRAPH.CSV::DQUOTE1 ORG.DATAGRAPH.CSV::DQUOTE2)"
1308
    (DECLARE (SPECIAL DQUOTEDQUOTE-INDEX))
1309
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX DQUOTEDQUOTE-INDEX ATN-PARSER:*ATN-LEVEL))
1310
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
1311
    (IF (< DQUOTEDQUOTE-INDEX ATN-PARSER::INDEX)
1312
        (LET ((DQUOTEDQUOTE-INDEX ATN-PARSER::INDEX)
1313
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
1314
              (ATN-PARSER:*ATN-STACK (CONS 'DQUOTEDQUOTE ATN-PARSER:*ATN-STACK)))
1315
          (DECLARE (SPECIAL DQUOTEDQUOTE-INDEX))
1316
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
1317
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
1318
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
1319
            (ATN-PARSER:%ATN-BLOCK DQUOTEDQUOTE
1320
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
1321
                                              (SETF ATN-PARSER:*ATN-TERM* 'DQUOTEDQUOTE)
1322
                                              (RETURN-FROM DQUOTEDQUOTE (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
1323
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
1324
                                              (RETURN-FROM DQUOTEDQUOTE (VALUES NIL ATN-PARSER::INDEX NIL)))
1325
                                            (DQUOTEDQUOTE.2 (ATN-PARSER::INDEX)
1326
                                              (ATN-PARSER:%ATN-NODE-BLOCK DQUOTEDQUOTE.2
1327
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP DQUOTEDQUOTE)
1328
                                                                                                      (WHEN T
1329
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1330
                                                                                                                'DQUOTEDQUOTE)
1331
                                                                                                        (ATN-PARSER:%ATN-TRACE
1332
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
1333
                                                                                                         'DQUOTEDQUOTE
1334
                                                                                                         ATN-PARSER::INDEX
1335
                                                                                                         (LIST 'DQUOTE1 DQUOTE1
1336
                                                                                                               'DQUOTE2 DQUOTE2))
1337
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
1338
                                                                                                               (IF (EQ
1339
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
1340
                                                                                                                    T)
1341
                                                                                                                   (|DQUOTEDQUOTE-Constructor|
1342
                                                                                                                    DQUOTE1 DQUOTE2)
1343
                                                                                                                   (IF (EQ
1344
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
1345
                                                                                                                        'CONS)
1346
                                                                                                                       (CONS
1347
                                                                                                                        'DQUOTEDQUOTE
1348
                                                                                                                        (DELETE NIL
1349
                                                                                                                                (LIST
1350
                                                                                                                                 DQUOTE1
1351
                                                                                                                                 DQUOTE2)))
1352
                                                                                                                       'DQUOTEDQUOTE))))
1353
                                                                                                          (ATN-PARSER::SUCCEED
1354
                                                                                                           ATN-PARSER::INDEX
1355
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
1356
                                            (DQUOTEDQUOTE/DQUOTEDQUOTE.2.4 (ATN-PARSER::INDEX)
1357
                                              (ATN-PARSER:%ATN-NODE-BLOCK DQUOTEDQUOTE/DQUOTEDQUOTE.2.4
1358
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (ATN-PARSER::CAT DQUOTE2)
1359
                                                                                                      (COND
1360
                                                                                                       ((IS-DQUOTE2
1361
                                                                                                         ATN-PARSER::|item|)
1362
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1363
                                                                                                                'DQUOTE2)
1364
                                                                                                        (SETF DQUOTE2
1365
                                                                                                                (IF (EQ
1366
                                                                                                                     ATN-PARSER:*ATN-REDUCE*
1367
                                                                                                                     T)
1368
                                                                                                                    (ATN-PARSER:ATN-REDUCE-ITEM
1369
                                                                                                                     #'|DQUOTE2-Constructor|
1370
                                                                                                                     ATN-PARSER::|item|)
1371
                                                                                                                    (IF (EQ
1372
                                                                                                                         ATN-PARSER:*ATN-REDUCE*
1373
                                                                                                                         'CONS)
1374
                                                                                                                        (LIST
1375
                                                                                                                         'DQUOTE2
1376
                                                                                                                         ATN-PARSER::|item|)
1377
                                                                                                                        'DQUOTE2)))
1378
                                                                                                        (DQUOTEDQUOTE.2
1379
                                                                                                         (1+ ATN-PARSER::INDEX)))
1380
                                                                                                       (T
1381
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1382
                                                                                                                'DQUOTE2)
1383
                                                                                                        (|DQUOTEDQUOTE/fail.3|
1384
                                                                                                         ATN-PARSER::INDEX))))))
1385
                                            (|DQUOTEDQUOTE/fail.3| (ATN-PARSER::INDEX)
1386
                                              (ATN-PARSER:%ATN-NODE-BLOCK |DQUOTEDQUOTE/fail.3|
1387
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
1388
                                            (|DQUOTEDQUOTE/start.1| (ATN-PARSER::INDEX)
1389
                                              (ATN-PARSER:%ATN-NODE-BLOCK |DQUOTEDQUOTE/start.1|
1390
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (ATN-PARSER::CAT DQUOTE1)
1391
                                                                                                      (COND
1392
                                                                                                       ((IS-DQUOTE1
1393
                                                                                                         ATN-PARSER::|item|)
1394
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1395
                                                                                                                'DQUOTE1)
1396
                                                                                                        (SETF DQUOTE1
1397
                                                                                                                (IF (EQ
1398
                                                                                                                     ATN-PARSER:*ATN-REDUCE*
1399
                                                                                                                     T)
1400
                                                                                                                    (ATN-PARSER:ATN-REDUCE-ITEM
1401
                                                                                                                     #'|DQUOTE1-Constructor|
1402
                                                                                                                     ATN-PARSER::|item|)
1403
                                                                                                                    (IF (EQ
1404
                                                                                                                         ATN-PARSER:*ATN-REDUCE*
1405
                                                                                                                         'CONS)
1406
                                                                                                                        (LIST
1407
                                                                                                                         'DQUOTE1
1408
                                                                                                                         ATN-PARSER::|item|)
1409
                                                                                                                        'DQUOTE1)))
1410
                                                                                                        (DQUOTEDQUOTE/DQUOTEDQUOTE.2.4
1411
                                                                                                         (1+ ATN-PARSER::INDEX)))
1412
                                                                                                       (T
1413
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1414
                                                                                                                'DQUOTE1)
1415
                                                                                                        (|DQUOTEDQUOTE/fail.3|
1416
                                                                                                         ATN-PARSER::INDEX)))))))
1417
                                     (DECLARE
1418
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL DQUOTEDQUOTE.2 DQUOTEDQUOTE/DQUOTEDQUOTE.2.4
1419
                                       |DQUOTEDQUOTE/fail.3| |DQUOTEDQUOTE/start.1|))
1420
                                     (|DQUOTEDQUOTE/start.1| ATN-PARSER::INDEX)
1421
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
1422
                                     NIL
1423
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
1424
        (WARN "recursive grammar: ~s @ position ~s: ~s" 'DQUOTEDQUOTE ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
1425
 (PROGN
1426
  (DEFVAR |nonescaped-INDEX|)
1427
  (DEFUN |nonescaped| (ATN-PARSER::INDEX &AUX (TEXTDATA NIL))
1428
    "{7 } nonescaped ::= TEXTDATA*
1429
 (ORG.DATAGRAPH.CSV::TEXTDATA)"
1430
    (DECLARE (SPECIAL |nonescaped-INDEX|))
1431
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX |nonescaped-INDEX| ATN-PARSER:*ATN-LEVEL))
1432
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
1433
    (IF (< |nonescaped-INDEX| ATN-PARSER::INDEX)
1434
        (LET ((|nonescaped-INDEX| ATN-PARSER::INDEX)
1435
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
1436
              (ATN-PARSER:*ATN-STACK (CONS '|nonescaped| ATN-PARSER:*ATN-STACK)))
1437
          (DECLARE (SPECIAL |nonescaped-INDEX|))
1438
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
1439
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
1440
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
1441
            (ATN-PARSER:%ATN-BLOCK |nonescaped|
1442
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
1443
                                              (SETF ATN-PARSER:*ATN-TERM* '|nonescaped|)
1444
                                              (RETURN-FROM |nonescaped| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
1445
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
1446
                                              (RETURN-FROM |nonescaped| (VALUES NIL ATN-PARSER::INDEX NIL)))
1447
                                            (|nonescaped.2| (ATN-PARSER::INDEX)
1448
                                              (ATN-PARSER:%ATN-NODE-BLOCK |nonescaped.2|
1449
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP |nonescaped|)
1450
                                                                                                      (WHEN T
1451
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1452
                                                                                                                '|nonescaped|)
1453
                                                                                                        (ATN-PARSER:%ATN-TRACE
1454
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
1455
                                                                                                         '|nonescaped|
1456
                                                                                                         ATN-PARSER::INDEX
1457
                                                                                                         (LIST 'TEXTDATA TEXTDATA))
1458
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
1459
                                                                                                               (IF (EQ
1460
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
1461
                                                                                                                    T)
1462
                                                                                                                   (|nonescaped-Constructor|
1463
                                                                                                                    TEXTDATA)
1464
                                                                                                                   (IF (EQ
1465
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
1466
                                                                                                                        'CONS)
1467
                                                                                                                       (CONS
1468
                                                                                                                        '|nonescaped|
1469
                                                                                                                        (DELETE NIL
1470
                                                                                                                                (LIST
1471
                                                                                                                                 TEXTDATA)))
1472
                                                                                                                       '|nonescaped|))))
1473
                                                                                                          (ATN-PARSER::SUCCEED
1474
                                                                                                           ATN-PARSER::INDEX
1475
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
1476
                                            (|nonescaped.4| (ATN-PARSER::INDEX)
1477
                                              (ATN-PARSER:%ATN-NODE-BLOCK |nonescaped.4|
1478
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST TEXTDATA)
1479
                                                                                                      (COND
1480
                                                                                                       ((IS-TEXTDATA
1481
                                                                                                         ATN-PARSER::|item|)
1482
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1483
                                                                                                                'TEXTDATA)
1484
                                                                                                        (SETF TEXTDATA
1485
                                                                                                                (CONS
1486
                                                                                                                 (IF (EQ
1487
                                                                                                                      ATN-PARSER:*ATN-REDUCE*
1488
                                                                                                                      T)
1489
                                                                                                                     (ATN-PARSER:ATN-REDUCE-ITEM
1490
                                                                                                                      #'|TEXTDATA-Constructor|
1491
                                                                                                                      ATN-PARSER::|item|)
1492
                                                                                                                     (IF (EQ
1493
                                                                                                                          ATN-PARSER:*ATN-REDUCE*
1494
                                                                                                                          'CONS)
1495
                                                                                                                         (LIST
1496
                                                                                                                          'TEXTDATA
1497
                                                                                                                          ATN-PARSER::|item|)
1498
                                                                                                                         'TEXTDATA))
1499
                                                                                                                 TEXTDATA))
1500
                                                                                                        (|nonescaped.4|
1501
                                                                                                         (1+ ATN-PARSER::INDEX)))
1502
                                                                                                       (T
1503
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
1504
                                                                                                                'TEXTDATA)
1505
                                                                                                        (|nonescaped.2|
1506
                                                                                                         ATN-PARSER::INDEX))))))
1507
                                            (|nonescaped/fail.3| (ATN-PARSER::INDEX)
1508
                                              (ATN-PARSER:%ATN-NODE-BLOCK |nonescaped/fail.3|
1509
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
1510
                                            (|nonescaped/start.1| (ATN-PARSER::INDEX)
1511
                                              (ATN-PARSER:%ATN-NODE-BLOCK |nonescaped/start.1|
1512
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST TEXTDATA)
1513
                                                                                                      (COND
1514
                                                                                                       ((IS-TEXTDATA
1515
                                                                                                         ATN-PARSER::|item|)
1516
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1517
                                                                                                                'TEXTDATA)
1518
                                                                                                        (SETF TEXTDATA
1519
                                                                                                                (CONS
1520
                                                                                                                 (IF (EQ
1521
                                                                                                                      ATN-PARSER:*ATN-REDUCE*
1522
                                                                                                                      T)
1523
                                                                                                                     (ATN-PARSER:ATN-REDUCE-ITEM
1524
                                                                                                                      #'|TEXTDATA-Constructor|
1525
                                                                                                                      ATN-PARSER::|item|)
1526
                                                                                                                     (IF (EQ
1527
                                                                                                                          ATN-PARSER:*ATN-REDUCE*
1528
                                                                                                                          'CONS)
1529
                                                                                                                         (LIST
1530
                                                                                                                          'TEXTDATA
1531
                                                                                                                          ATN-PARSER::|item|)
1532
                                                                                                                         'TEXTDATA))
1533
                                                                                                                 TEXTDATA))
1534
                                                                                                        (|nonescaped.4|
1535
                                                                                                         (1+ ATN-PARSER::INDEX)))
1536
                                                                                                       (T
1537
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
1538
                                                                                                                'TEXTDATA)
1539
                                                                                                        (|nonescaped.2|
1540
                                                                                                         ATN-PARSER::INDEX)))))))
1541
                                     (DECLARE
1542
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL |nonescaped.2| |nonescaped.4| |nonescaped/fail.3|
1543
                                       |nonescaped/start.1|))
1544
                                     (|nonescaped/start.1| ATN-PARSER::INDEX)
1545
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
1546
                                     NIL
1547
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
1548
        (WARN "recursive grammar: ~s @ position ~s: ~s" '|nonescaped| ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
1549
 (PROGN
1550
  (DEFVAR EOL-INDEX)
1551
  (DEFUN EOL (ATN-PARSER::INDEX &AUX (CR NIL) (LF NIL))
1552
    "{12} EOL ::= ((CR LF) | CR | LF)
1553
 (ORG.DATAGRAPH.CSV::CR ORG.DATAGRAPH.CSV::LF)"
1554
    (DECLARE (SPECIAL EOL-INDEX))
1555
    (DECLARE (TYPE FIXNUM ATN-PARSER::INDEX EOL-INDEX ATN-PARSER:*ATN-LEVEL))
1556
    (DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0)))
1557
    (IF (< EOL-INDEX ATN-PARSER::INDEX)
1558
        (LET ((EOL-INDEX ATN-PARSER::INDEX)
1559
              (ATN-PARSER:*ATN-LEVEL (1+ ATN-PARSER:*ATN-LEVEL))
1560
              (ATN-PARSER:*ATN-STACK (CONS 'EOL ATN-PARSER:*ATN-STACK)))
1561
          (DECLARE (SPECIAL EOL-INDEX))
1562
          (DECLARE (DYNAMIC-EXTENT ATN-PARSER:*ATN-STACK))
1563
          (DECLARE (TYPE CONS ATN-PARSER:*ATN-STACK))
1564
          (SYMBOL-MACROLET ((ATN-PARSER::|item| (INPUT-REFERENCE ATN-PARSER::INDEX)))
1565
            (ATN-PARSER:%ATN-BLOCK EOL
1566
                                   (LABELS ((ATN-PARSER::SUCCEED (ATN-PARSER::INDEX ATN-PARSER::RESULT)
1567
                                              (SETF ATN-PARSER:*ATN-TERM* 'EOL)
1568
                                              (RETURN-FROM EOL (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX T)))
1569
                                            (ATN-PARSER::FAIL (ATN-PARSER::INDEX)
1570
                                              (RETURN-FROM EOL (VALUES NIL ATN-PARSER::INDEX NIL)))
1571
                                            (EOL.2 (ATN-PARSER::INDEX)
1572
                                              (ATN-PARSER:%ATN-NODE-BLOCK EOL.2
1573
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (POP EOL)
1574
                                                                                                      (WHEN T
1575
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1576
                                                                                                                'EOL)
1577
                                                                                                        (ATN-PARSER:%ATN-TRACE
1578
                                                                                                         " [***/~a @ ~s reduce structure: ~a"
1579
                                                                                                         'EOL ATN-PARSER::INDEX
1580
                                                                                                         (LIST 'CR CR 'LF LF))
1581
                                                                                                        (LET ((ATN-PARSER::RESULT-STRUCTURE
1582
                                                                                                               (IF (EQ
1583
                                                                                                                    ATN-PARSER:*ATN-REDUCE*
1584
                                                                                                                    T)
1585
                                                                                                                   (|EOL-Constructor|
1586
                                                                                                                    CR LF)
1587
                                                                                                                   (IF (EQ
1588
                                                                                                                        ATN-PARSER:*ATN-REDUCE*
1589
                                                                                                                        'CONS)
1590
                                                                                                                       (CONS 'EOL
1591
                                                                                                                             (DELETE
1592
                                                                                                                              NIL
1593
                                                                                                                              (LIST
1594
                                                                                                                               CR
1595
                                                                                                                               LF)))
1596
                                                                                                                       'EOL))))
1597
                                                                                                          (ATN-PARSER::SUCCEED
1598
                                                                                                           ATN-PARSER::INDEX
1599
                                                                                                           ATN-PARSER::RESULT-STRUCTURE))))))
1600
                                            (EOL/EOL.2.4 (ATN-PARSER::INDEX)
1601
                                              (ATN-PARSER:%ATN-NODE-BLOCK EOL/EOL.2.4
1602
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST CR)
1603
                                                                                                      (COND
1604
                                                                                                       ((IS-CR ATN-PARSER::|item|)
1605
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1606
                                                                                                                'CR)
1607
                                                                                                        (SETF CR
1608
                                                                                                                (IF (EQ
1609
                                                                                                                     ATN-PARSER:*ATN-REDUCE*
1610
                                                                                                                     T)
1611
                                                                                                                    (ATN-PARSER:ATN-REDUCE-ITEM
1612
                                                                                                                     #'|CR-Constructor|
1613
                                                                                                                     ATN-PARSER::|item|)
1614
                                                                                                                    (IF (EQ
1615
                                                                                                                         ATN-PARSER:*ATN-REDUCE*
1616
                                                                                                                         'CONS)
1617
                                                                                                                        (LIST 'CR
1618
                                                                                                                              ATN-PARSER::|item|)
1619
                                                                                                                        'CR)))
1620
                                                                                                        (EOL/EOL.2.5
1621
                                                                                                         (1+ ATN-PARSER::INDEX)))
1622
                                                                                                       (T
1623
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
1624
                                                                                                                'CR)
1625
                                                                                                        NIL)))))
1626
                                            (EOL/EOL.2.5 (ATN-PARSER::INDEX)
1627
                                              (ATN-PARSER:%ATN-NODE-BLOCK EOL/EOL.2.5
1628
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK (TEST LF)
1629
                                                                                                      (COND
1630
                                                                                                       ((IS-LF ATN-PARSER::|item|)
1631
                                                                                                        (SETF ATN-PARSER:*ATN-TERM*
1632
                                                                                                                'LF)
1633
                                                                                                        (SETF LF
1634
                                                                                                                (IF (EQ
1635
                                                                                                                     ATN-PARSER:*ATN-REDUCE*
1636
                                                                                                                     T)
1637
                                                                                                                    (ATN-PARSER:ATN-REDUCE-ITEM
1638
                                                                                                                     #'|LF-Constructor|
1639
                                                                                                                     ATN-PARSER::|item|)
1640
                                                                                                                    (IF (EQ
1641
                                                                                                                         ATN-PARSER:*ATN-REDUCE*
1642
                                                                                                                         'CONS)
1643
                                                                                                                        (LIST 'LF
1644
                                                                                                                              ATN-PARSER::|item|)
1645
                                                                                                                        'LF)))
1646
                                                                                                        (EOL.2
1647
                                                                                                         (1+ ATN-PARSER::INDEX)))
1648
                                                                                                       (T
1649
                                                                                                        (SETF ATN-PARSER:*ATN-TERM?*
1650
                                                                                                                'LF)
1651
                                                                                                        NIL)))))
1652
                                            (|EOL/fail.3| (ATN-PARSER::INDEX)
1653
                                              (ATN-PARSER:%ATN-NODE-BLOCK |EOL/fail.3|
1654
                                                                          (PROGN (ATN-PARSER::FAIL ATN-PARSER::INDEX))))
1655
                                            (|EOL/start.1| (ATN-PARSER::INDEX)
1656
                                              (ATN-PARSER:%ATN-NODE-BLOCK |EOL/start.1|
1657
                                                                          (ATN-PARSER:%ATN-EDGE-BLOCK OR
1658
                                                                                                      (OR
1659
                                                                                                       (ATN-PARSER:%ATN-EDGE-BLOCK
1660
                                                                                                        (ATN-PARSER::JUMP
1661
                                                                                                         EOL/EOL.2.4)
1662
                                                                                                        (EOL/EOL.2.4
1663
                                                                                                         ATN-PARSER::INDEX))
1664
                                                                                                       (ATN-PARSER:%ATN-EDGE-BLOCK
1665
                                                                                                        (TEST CR)
1666
                                                                                                        (COND
1667
                                                                                                         ((IS-CR ATN-PARSER::|item|)
1668
                                                                                                          (SETF ATN-PARSER:*ATN-TERM*
1669
                                                                                                                  'CR)
1670
                                                                                                          (SETF CR
1671
                                                                                                                  (IF (EQ
1672
                                                                                                                       ATN-PARSER:*ATN-REDUCE*
1673
                                                                                                                       T)
1674
                                                                                                                      (ATN-PARSER:ATN-REDUCE-ITEM
1675
                                                                                                                       #'|CR-Constructor|
1676
                                                                                                                       ATN-PARSER::|item|)
1677
                                                                                                                      (IF (EQ
1678
                                                                                                                           ATN-PARSER:*ATN-REDUCE*
1679
                                                                                                                           'CONS)
1680
                                                                                                                          (LIST 'CR
1681
                                                                                                                                ATN-PARSER::|item|)
1682
                                                                                                                          'CR)))
1683
                                                                                                          (EOL.2
1684
                                                                                                           (1+ ATN-PARSER::INDEX)))
1685
                                                                                                         (T
1686
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
1687
                                                                                                                  'CR)
1688
                                                                                                          NIL)))
1689
                                                                                                       (ATN-PARSER:%ATN-EDGE-BLOCK
1690
                                                                                                        (TEST LF)
1691
                                                                                                        (COND
1692
                                                                                                         ((IS-LF ATN-PARSER::|item|)
1693
                                                                                                          (SETF ATN-PARSER:*ATN-TERM*
1694
                                                                                                                  'LF)
1695
                                                                                                          (SETF LF
1696
                                                                                                                  (IF (EQ
1697
                                                                                                                       ATN-PARSER:*ATN-REDUCE*
1698
                                                                                                                       T)
1699
                                                                                                                      (ATN-PARSER:ATN-REDUCE-ITEM
1700
                                                                                                                       #'|LF-Constructor|
1701
                                                                                                                       ATN-PARSER::|item|)
1702
                                                                                                                      (IF (EQ
1703
                                                                                                                           ATN-PARSER:*ATN-REDUCE*
1704
                                                                                                                           'CONS)
1705
                                                                                                                          (LIST 'LF
1706
                                                                                                                                ATN-PARSER::|item|)
1707
                                                                                                                          'LF)))
1708
                                                                                                          (EOL.2
1709
                                                                                                           (1+ ATN-PARSER::INDEX)))
1710
                                                                                                         (T
1711
                                                                                                          (SETF ATN-PARSER:*ATN-TERM?*
1712
                                                                                                                  'LF)
1713
                                                                                                          NIL)))
1714
                                                                                                       (|EOL/fail.3|
1715
                                                                                                        ATN-PARSER::INDEX))))))
1716
                                     (DECLARE
1717
                                      (INLINE ATN-PARSER::SUCCEED ATN-PARSER::FAIL EOL.2 EOL/EOL.2.4 EOL/EOL.2.5 |EOL/fail.3|
1718
                                       |EOL/start.1|))
1719
                                     (|EOL/start.1| ATN-PARSER::INDEX)
1720
                                     (SETF ATN-PARSER:*ATN-NODE NIL)
1721
                                     NIL
1722
                                     (ATN-PARSER::FAIL ATN-PARSER::INDEX)))))
1723
        (WARN "recursive grammar: ~s @ position ~s: ~s" 'EOL ATN-PARSER::INDEX ATN-PARSER:*ATN-STACK))))
1724
 (SETF (GET '|file| :PRODUCTION) "
1725
 {1 } file ::= (header EOL)? filerecords?")
1726
 (SETF (GET '|filerecords| :PRODUCTION) "
1727
 {1a} filerecords ::= record filerecords?")
1728
 (SETF (GET '|header| :PRODUCTION) "
1729
 {2 } header ::= name (COMMA header)?")
1730
 (SETF (GET '|record| :PRODUCTION) "
1731
 {3 } record ::= recordfields EOL")
1732
 (SETF (GET '|recordfields| :PRODUCTION) "
1733
 {3a} recordfields ::= field (COMMA recordfields)?")
1734
 (SETF (GET '|name| :PRODUCTION) "
1735
 {4 } name ::= field")
1736
 (SETF (GET '|field| :PRODUCTION) "
1737
 {5 } field ::= (escaped | nonescaped)")
1738
 (SETF (GET '|escaped| :PRODUCTION) "
1739
 {6 } escaped ::= WS* DQUOTE1 escapedtextdata* DQUOTE2 WS*")
1740
 (SETF (GET '|escapedtextdata| :PRODUCTION) "
1741
 {6a} escapedtextdata ::= (TEXTDATA | COMMA | WS | DQUOTEDQUOTE)")
1742
 (SETF (GET 'DQUOTEDQUOTE :PRODUCTION) "
1743
 {6b} DQUOTEDQUOTE ::= DQUOTE1 DQUOTE2")
1744
 (SETF (GET '|nonescaped| :PRODUCTION) "
1745
 {7 } nonescaped ::= TEXTDATA*")
1746
 (SETF (GET 'EOL :PRODUCTION) "
1747
 {12} EOL ::= ((CR LF) | CR | LF)")
1748
 (DEFUN |file-Parser|
1749
        (ATN-PARSER::*ATN-INPUT
1750
         &KEY ((:TRACE ATN-PARSER:*ATN-TRACE*) ATN-PARSER:*ATN-TRACE*)
1751
         ((:TRACE-NETS ATN-PARSER:*ATN-TRACE-NETS*) ATN-PARSER:*ATN-TRACE-NETS*)
1752
         ((:START-NAME ATN-PARSER::*ATN-START-NAME) 'ORG.DATAGRAPH.SPOCQ.IMPLEMENTATION::|file|)
1753
         ((:MODE ATN-PARSER::*ATN-MODE) :MULTIPLE) ((:REDUCE ATN-PARSER:*ATN-REDUCE*) T)
1754
         ((:REGISTER-WORDS ATN-PARSER:*ATN-REGISTER-WORDS) NIL) &ALLOW-OTHER-KEYS
1755
         &AUX)
1756
   "// generated 2020.07.09T11:25:34.
1757
 
1758
 [[1]]  file ::= (header EOL)? filerecords?
1759
 [[1a]] filerecords ::= record filerecords?
1760
 [[2]]  header :== name (COMMA header)?
1761
 [[3]]  record :== recordfields EOL
1762
 [[3a]] recordfields ::= field (COMMA recordfields)?
1763
 [[4]]  name :== field
1764
 [[5]]  field ::= escaped | nonescaped
1765
 [[6]]  escaped ::= WS* DQUOTE1 escapedtextdata* DQUOTE2 WS*
1766
 //[[6a]] escapedtextdata ::= TEXTDATA | COMMA | CR | LF | DQUOTEDQUOTE
1767
 [[6a]] escapedtextdata ::= TEXTDATA | COMMA | WS | DQUOTEDQUOTE
1768
 [[6b]] DQUOTEDQUOTE ::= DQUOTE1 DQUOTE2
1769
 [[6c]] DQUOTE1 ::= DQUOTE
1770
 [[6d]] DQUOTE2 ::= DQUOTE
1771
 [[7]]  nonescaped ::= TEXTDATA*
1772
 //     COMMA = %x2C
1773
 //     CR = %x0D
1774
 //     DQUOTE =  %x22
1775
 //     LF = %x0A
1776
 [[12]] EOL ::= (CR LF) | CR | LF
1777
 //[[13]] TEXTDATA =  %x20-21 | %x23-2B | %x2D-7E
1778
 
1779
 "
1780
   (DECLARE (SPECIAL ATN-PARSER:*ATN-REDUCE* ATN-PARSER::*ATN-MODE ATN-PARSER::*ATN-INPUT))
1781
   (LET ((ATN-PARSER:*ATN-LEVEL 0)
1782
         (ATN-PARSER:*ATN-STACK '(|file-Parser|))
1783
         (ATN-PARSER:*ATN-NODE NIL)
1784
         (ATN-PARSER:*ATN-PROPERTIES NIL)
1785
         (ATN-PARSER:*ATN-CLASS NIL)
1786
         (|file-INDEX| -1)
1787
         (|filerecords-INDEX| -1)
1788
         (|header-INDEX| -1)
1789
         (|record-INDEX| -1)
1790
         (|recordfields-INDEX| -1)
1791
         (|name-INDEX| -1)
1792
         (|field-INDEX| -1)
1793
         (|escaped-INDEX| -1)
1794
         (|escapedtextdata-INDEX| -1)
1795
         (DQUOTEDQUOTE-INDEX -1)
1796
         (|nonescaped-INDEX| -1)
1797
         (EOL-INDEX -1)
1798
         (ATN-PARSER::ATN-NET-NAMES
1799
          '(|file| |filerecords| |header| |record| |recordfields| |name| |field| |escaped| |escapedtextdata| DQUOTEDQUOTE
1800
                   |nonescaped| EOL)))
1801
     (DECLARE
1802
      (SPECIAL |file-INDEX| |filerecords-INDEX| |header-INDEX| |record-INDEX| |recordfields-INDEX| |name-INDEX| |field-INDEX|
1803
       |escaped-INDEX| |escapedtextdata-INDEX| DQUOTEDQUOTE-INDEX |nonescaped-INDEX| EOL-INDEX))
1804
     (UNLESS (FIND ATN-PARSER::*ATN-START-NAME ATN-PARSER::ATN-NET-NAMES)
1805
       (ERROR "production not defined in system: ~s: ~s." ATN-PARSER::*ATN-START-NAME '|file-Parser|))
1806
     (UNLESS (FBOUNDP ATN-PARSER::*ATN-START-NAME)
1807
       (ERROR "parse function missing: ~s: ~s." ATN-PARSER::*ATN-START-NAME '|file-Parser|))
1808
     (HANDLER-BIND ((ATN-PARSER:CONTINUABLE-PARSER-ERROR #'(LAMBDA (CONDITION) (SIGNAL CONDITION)))
1809
                    (ATN-PARSER:TERMINAL-PARSER-ERROR
1810
                     #'(LAMBDA (CONDITION &AUX (ATN-PARSER::ACTION (ATN-PARSER:CONDITION-ACTION CONDITION)))
1811
                         (ETYPECASE ATN-PARSER::ACTION
1812
                           (NULL)
1813
                           (KEYWORD
1814
                            (ECASE ATN-PARSER::ACTION
1815
                              (:ABORT
1816
                               (WHEN ATN-PARSER:*ATN-TRACE*
1817
                                 (WARN "terminating parse on condition: ~a: Context ~s." CONDITION ATN-PARSER::*ATN-INPUT))
1818
                               (RETURN-FROM |file-Parser| (VALUES NIL CONDITION NIL)))
1819
                              (:CONTINUE
1820
                               (WHEN ATN-PARSER:*ATN-TRACE*
1821
                                 (WARN "continuing parse with condition: ~a: Context ~s." CONDITION ATN-PARSER::*ATN-INPUT))
1822
                               (CONTINUE CONDITION))
1823
                              (:SIGNAL
1824
                               (WHEN ATN-PARSER:*ATN-TRACE*
1825
                                 (WARN "signaling parse condition: ~a: Context ~s." CONDITION ATN-PARSER::*ATN-INPUT))
1826
                               (SIGNAL CONDITION)
1827
                               (WHEN ATN-PARSER:*ATN-TRACE*
1828
                                 (WARN "continuing parse with condition: ~a: Context ~s." CONDITION ATN-PARSER::*ATN-INPUT))
1829
                               (CONTINUE CONDITION))))
1830
                           (FUNCTION (FUNCALL ATN-PARSER::ACTION)))))
1831
                    (ERROR #'(LAMBDA (CONDITION) (WHEN ATN-PARSER:*ATN-TRACE* (WARN "parse raised condition: ~a." CONDITION)) NIL)))
1832
       (MULTIPLE-VALUE-BIND (ATN-PARSER::RESULT ATN-PARSER::INDEX ATN-PARSER::SUCCESS)
1833
           (FUNCALL ATN-PARSER::*ATN-START-NAME 0)
1834
         (COND
1835
          (ATN-PARSER::SUCCESS
1836
           (RETURN-FROM |file-Parser| (VALUES ATN-PARSER::RESULT ATN-PARSER::INDEX (INPUT-EOF? ATN-PARSER::INDEX))))
1837
          (T (RETURN-FROM |file-Parser| (VALUES NIL ATN-PARSER::INDEX NIL))))))))