psych 2.2.0 → 2.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +11 -0
- data/Rakefile +3 -1
- data/ext/psych/psych.h +0 -3
- data/ext/psych/psych_emitter.c +6 -22
- data/ext/psych/psych_parser.c +0 -29
- data/ext/psych/psych_to_ruby.c +0 -4
- data/ext/psych/yaml/emitter.c +4 -4
- data/ext/psych/yaml/loader.c +2 -2
- data/ext/psych/yaml/parser.c +1 -1
- data/ext/psych/yaml/reader.c +3 -3
- data/ext/psych/yaml/scanner.c +24 -24
- data/ext/psych/yaml/writer.c +1 -1
- data/lib/psych.rb +1 -3
- data/lib/psych/versions.rb +6 -1
- data/psych.gemspec +8 -6
- metadata +3 -7
- data/ext/java/PsychEmitter.java +0 -345
- data/ext/java/PsychLibrary.java +0 -93
- data/ext/java/PsychParser.java +0 -399
- data/ext/java/PsychToRuby.java +0 -79
- data/ext/java/PsychYamlTree.java +0 -55
- data/lib/psych_jars.rb +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b3d0517189a9d9a831b2732d0a6d8392b20292f7
|
4
|
+
data.tar.gz: '068f28a7615fb785fffb794bd67c4cff126c65a3'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8a6b72ff59c6604e90ca759bbdd3cc634c390587bed67bca04d8858db26a1fe58f8521b2d4cc1e6c2ac9e22844da6c6daf2e02a1be5141526c707193bb780e32
|
7
|
+
data.tar.gz: ef4f1e582bdfb0e088a75db018e642f6e387aee4fb271ad1ad69e9d8f1b42d81893f0524e2b984b25b734ecef83818ec114871f9242ba204fe47ea2e1e663613
|
data/.travis.yml
CHANGED
data/Rakefile
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
$LOAD_PATH.unshift './lib'
|
2
|
+
load 'psych/versions.rb'
|
1
3
|
require "bundler/gem_tasks"
|
2
4
|
require "rake/testtask"
|
3
5
|
|
@@ -15,7 +17,7 @@ if RUBY_PLATFORM =~ /java/
|
|
15
17
|
# and tell maven via system properties the snakeyaml version
|
16
18
|
# this is basically the same as running from the commandline:
|
17
19
|
# rmvn dependency:build-classpath -Dsnakeyaml.version='use version from Psych::DEFAULT_SNAKEYAML_VERSION here'
|
18
|
-
Maven::Ruby::Maven.new.exec(
|
20
|
+
Maven::Ruby::Maven.new.exec('dependency:build-classpath', "-Dsnakeyaml.version=#{Psych::DEFAULT_SNAKEYAML_VERSION}", '-Dverbose=true')
|
19
21
|
ext.source_version = '1.7'
|
20
22
|
ext.target_version = '1.7'
|
21
23
|
ext.classpath = File.read('pkg/classpath')
|
data/ext/psych/psych.h
CHANGED
data/ext/psych/psych_emitter.c
CHANGED
@@ -8,6 +8,7 @@
|
|
8
8
|
#endif
|
9
9
|
|
10
10
|
VALUE cPsychEmitter;
|
11
|
+
static ID id_io;
|
11
12
|
static ID id_write;
|
12
13
|
static ID id_line_width;
|
13
14
|
static ID id_indentation;
|
@@ -21,12 +22,8 @@ static void emit(yaml_emitter_t * emitter, yaml_event_t * event)
|
|
21
22
|
|
22
23
|
static int writer(void *ctx, unsigned char *buffer, size_t size)
|
23
24
|
{
|
24
|
-
VALUE
|
25
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
25
|
+
VALUE self = (VALUE)ctx, io = rb_attr_get(self, id_io);
|
26
26
|
VALUE str = rb_enc_str_new((const char *)buffer, (long)size, rb_utf8_encoding());
|
27
|
-
#else
|
28
|
-
VALUE str = rb_str_new((const char *)buffer, (long)size);
|
29
|
-
#endif
|
30
27
|
VALUE wrote = rb_funcall(io, id_write, 1, str);
|
31
28
|
return (int)NUM2INT(wrote);
|
32
29
|
}
|
@@ -94,7 +91,8 @@ static VALUE initialize(int argc, VALUE *argv, VALUE self)
|
|
94
91
|
yaml_emitter_set_canonical(emitter, Qtrue == canonical ? 1 : 0);
|
95
92
|
}
|
96
93
|
|
97
|
-
|
94
|
+
rb_ivar_set(self, id_io, io);
|
95
|
+
yaml_emitter_set_output(emitter, writer, (void *)self);
|
98
96
|
|
99
97
|
return self;
|
100
98
|
}
|
@@ -168,9 +166,7 @@ static VALUE start_document(VALUE self, VALUE version, VALUE tags, VALUE imp)
|
|
168
166
|
if(RTEST(tags)) {
|
169
167
|
long i = 0;
|
170
168
|
long len;
|
171
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
172
169
|
rb_encoding * encoding = rb_utf8_encoding();
|
173
|
-
#endif
|
174
170
|
|
175
171
|
Check_Type(tags, T_ARRAY);
|
176
172
|
|
@@ -193,10 +189,8 @@ static VALUE start_document(VALUE self, VALUE version, VALUE tags, VALUE imp)
|
|
193
189
|
value = RARRAY_AREF(tuple, 1);
|
194
190
|
StringValue(name);
|
195
191
|
StringValue(value);
|
196
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
197
192
|
name = rb_str_export_to_enc(name, encoding);
|
198
193
|
value = rb_str_export_to_enc(value, encoding);
|
199
|
-
#endif
|
200
194
|
|
201
195
|
tail->handle = (yaml_char_t *)RSTRING_PTR(name);
|
202
196
|
tail->prefix = (yaml_char_t *)RSTRING_PTR(value);
|
@@ -257,14 +251,11 @@ static VALUE scalar(
|
|
257
251
|
) {
|
258
252
|
yaml_emitter_t * emitter;
|
259
253
|
yaml_event_t event;
|
260
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
261
254
|
rb_encoding *encoding;
|
262
|
-
#endif
|
263
255
|
TypedData_Get_Struct(self, yaml_emitter_t, &psych_emitter_type, emitter);
|
264
256
|
|
265
257
|
Check_Type(value, T_STRING);
|
266
258
|
|
267
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
268
259
|
encoding = rb_utf8_encoding();
|
269
260
|
|
270
261
|
value = rb_str_export_to_enc(value, encoding);
|
@@ -278,7 +269,6 @@ static VALUE scalar(
|
|
278
269
|
Check_Type(tag, T_STRING);
|
279
270
|
tag = rb_str_export_to_enc(tag, encoding);
|
280
271
|
}
|
281
|
-
#endif
|
282
272
|
|
283
273
|
yaml_scalar_event_initialize(
|
284
274
|
&event,
|
@@ -313,7 +303,6 @@ static VALUE start_sequence(
|
|
313
303
|
yaml_emitter_t * emitter;
|
314
304
|
yaml_event_t event;
|
315
305
|
|
316
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
317
306
|
rb_encoding * encoding = rb_utf8_encoding();
|
318
307
|
|
319
308
|
if(!NIL_P(anchor)) {
|
@@ -325,7 +314,6 @@ static VALUE start_sequence(
|
|
325
314
|
Check_Type(tag, T_STRING);
|
326
315
|
tag = rb_str_export_to_enc(tag, encoding);
|
327
316
|
}
|
328
|
-
#endif
|
329
317
|
|
330
318
|
TypedData_Get_Struct(self, yaml_emitter_t, &psych_emitter_type, emitter);
|
331
319
|
|
@@ -377,12 +365,10 @@ static VALUE start_mapping(
|
|
377
365
|
) {
|
378
366
|
yaml_emitter_t * emitter;
|
379
367
|
yaml_event_t event;
|
380
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
381
368
|
rb_encoding *encoding;
|
382
|
-
|
369
|
+
|
383
370
|
TypedData_Get_Struct(self, yaml_emitter_t, &psych_emitter_type, emitter);
|
384
371
|
|
385
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
386
372
|
encoding = rb_utf8_encoding();
|
387
373
|
|
388
374
|
if(!NIL_P(anchor)) {
|
@@ -394,7 +380,6 @@ static VALUE start_mapping(
|
|
394
380
|
Check_Type(tag, T_STRING);
|
395
381
|
tag = rb_str_export_to_enc(tag, encoding);
|
396
382
|
}
|
397
|
-
#endif
|
398
383
|
|
399
384
|
yaml_mapping_start_event_initialize(
|
400
385
|
&event,
|
@@ -440,12 +425,10 @@ static VALUE alias(VALUE self, VALUE anchor)
|
|
440
425
|
yaml_event_t event;
|
441
426
|
TypedData_Get_Struct(self, yaml_emitter_t, &psych_emitter_type, emitter);
|
442
427
|
|
443
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
444
428
|
if(!NIL_P(anchor)) {
|
445
429
|
Check_Type(anchor, T_STRING);
|
446
430
|
anchor = rb_str_export_to_enc(anchor, rb_utf8_encoding());
|
447
431
|
}
|
448
|
-
#endif
|
449
432
|
|
450
433
|
yaml_alias_event_initialize(
|
451
434
|
&event,
|
@@ -562,6 +545,7 @@ void Init_psych_emitter(void)
|
|
562
545
|
rb_define_method(cPsychEmitter, "line_width", line_width, 0);
|
563
546
|
rb_define_method(cPsychEmitter, "line_width=", set_line_width, 1);
|
564
547
|
|
548
|
+
id_io = rb_intern("io");
|
565
549
|
id_write = rb_intern("write");
|
566
550
|
id_line_width = rb_intern("line_width");
|
567
551
|
id_indentation = rb_intern("indentation");
|
data/ext/psych/psych_parser.c
CHANGED
@@ -93,7 +93,6 @@ static VALUE make_exception(yaml_parser_t * parser, VALUE path)
|
|
93
93
|
parser->context ? rb_usascii_str_new2(parser->context) : Qnil);
|
94
94
|
}
|
95
95
|
|
96
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
97
96
|
static VALUE transcode_string(VALUE src, int * parser_encoding)
|
98
97
|
{
|
99
98
|
int utf8 = rb_utf8_encindex();
|
@@ -171,8 +170,6 @@ static VALUE transcode_io(VALUE src, int * parser_encoding)
|
|
171
170
|
return src;
|
172
171
|
}
|
173
172
|
|
174
|
-
#endif
|
175
|
-
|
176
173
|
static VALUE protected_start_stream(VALUE pointer)
|
177
174
|
{
|
178
175
|
VALUE *args = (VALUE *)pointer;
|
@@ -253,10 +250,8 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
253
250
|
int tainted = 0;
|
254
251
|
int state = 0;
|
255
252
|
int parser_encoding = YAML_ANY_ENCODING;
|
256
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
257
253
|
int encoding = rb_utf8_encindex();
|
258
254
|
rb_encoding * internal_enc = rb_default_internal_encoding();
|
259
|
-
#endif
|
260
255
|
VALUE handler = rb_iv_get(self, "@handler");
|
261
256
|
|
262
257
|
if (rb_scan_args(argc, argv, "11", &yaml, &path) == 1) {
|
@@ -274,18 +269,14 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
274
269
|
if (OBJ_TAINTED(yaml)) tainted = 1;
|
275
270
|
|
276
271
|
if (rb_respond_to(yaml, id_read)) {
|
277
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
278
272
|
yaml = transcode_io(yaml, &parser_encoding);
|
279
273
|
yaml_parser_set_encoding(parser, parser_encoding);
|
280
|
-
#endif
|
281
274
|
yaml_parser_set_input(parser, io_reader, (void *)yaml);
|
282
275
|
if (RTEST(rb_obj_is_kind_of(yaml, rb_cIO))) tainted = 1;
|
283
276
|
} else {
|
284
277
|
StringValue(yaml);
|
285
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
286
278
|
yaml = transcode_string(yaml, &parser_encoding);
|
287
279
|
yaml_parser_set_encoding(parser, parser_encoding);
|
288
|
-
#endif
|
289
280
|
yaml_parser_set_input_string(
|
290
281
|
parser,
|
291
282
|
(const unsigned char *)RSTRING_PTR(yaml),
|
@@ -338,17 +329,13 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
338
329
|
if(start->handle) {
|
339
330
|
handle = rb_str_new2((const char *)start->handle);
|
340
331
|
if (tainted) OBJ_TAINT(handle);
|
341
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
342
332
|
PSYCH_TRANSCODE(handle, encoding, internal_enc);
|
343
|
-
#endif
|
344
333
|
}
|
345
334
|
|
346
335
|
if(start->prefix) {
|
347
336
|
prefix = rb_str_new2((const char *)start->prefix);
|
348
337
|
if (tainted) OBJ_TAINT(prefix);
|
349
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
350
338
|
PSYCH_TRANSCODE(prefix, encoding, internal_enc);
|
351
|
-
#endif
|
352
339
|
}
|
353
340
|
|
354
341
|
rb_ary_push(tag_directives, rb_ary_new3((long)2, handle, prefix));
|
@@ -377,9 +364,7 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
377
364
|
if(event.data.alias.anchor) {
|
378
365
|
alias = rb_str_new2((const char *)event.data.alias.anchor);
|
379
366
|
if (tainted) OBJ_TAINT(alias);
|
380
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
381
367
|
PSYCH_TRANSCODE(alias, encoding, internal_enc);
|
382
|
-
#endif
|
383
368
|
}
|
384
369
|
|
385
370
|
args[0] = handler;
|
@@ -399,24 +384,18 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
399
384
|
);
|
400
385
|
if (tainted) OBJ_TAINT(val);
|
401
386
|
|
402
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
403
387
|
PSYCH_TRANSCODE(val, encoding, internal_enc);
|
404
|
-
#endif
|
405
388
|
|
406
389
|
if(event.data.scalar.anchor) {
|
407
390
|
anchor = rb_str_new2((const char *)event.data.scalar.anchor);
|
408
391
|
if (tainted) OBJ_TAINT(anchor);
|
409
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
410
392
|
PSYCH_TRANSCODE(anchor, encoding, internal_enc);
|
411
|
-
#endif
|
412
393
|
}
|
413
394
|
|
414
395
|
if(event.data.scalar.tag) {
|
415
396
|
tag = rb_str_new2((const char *)event.data.scalar.tag);
|
416
397
|
if (tainted) OBJ_TAINT(tag);
|
417
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
418
398
|
PSYCH_TRANSCODE(tag, encoding, internal_enc);
|
419
|
-
#endif
|
420
399
|
}
|
421
400
|
|
422
401
|
plain_implicit =
|
@@ -446,18 +425,14 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
446
425
|
if(event.data.sequence_start.anchor) {
|
447
426
|
anchor = rb_str_new2((const char *)event.data.sequence_start.anchor);
|
448
427
|
if (tainted) OBJ_TAINT(anchor);
|
449
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
450
428
|
PSYCH_TRANSCODE(anchor, encoding, internal_enc);
|
451
|
-
#endif
|
452
429
|
}
|
453
430
|
|
454
431
|
tag = Qnil;
|
455
432
|
if(event.data.sequence_start.tag) {
|
456
433
|
tag = rb_str_new2((const char *)event.data.sequence_start.tag);
|
457
434
|
if (tainted) OBJ_TAINT(tag);
|
458
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
459
435
|
PSYCH_TRANSCODE(tag, encoding, internal_enc);
|
460
|
-
#endif
|
461
436
|
}
|
462
437
|
|
463
438
|
implicit =
|
@@ -486,17 +461,13 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
486
461
|
if(event.data.mapping_start.anchor) {
|
487
462
|
anchor = rb_str_new2((const char *)event.data.mapping_start.anchor);
|
488
463
|
if (tainted) OBJ_TAINT(anchor);
|
489
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
490
464
|
PSYCH_TRANSCODE(anchor, encoding, internal_enc);
|
491
|
-
#endif
|
492
465
|
}
|
493
466
|
|
494
467
|
if(event.data.mapping_start.tag) {
|
495
468
|
tag = rb_str_new2((const char *)event.data.mapping_start.tag);
|
496
469
|
if (tainted) OBJ_TAINT(tag);
|
497
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
498
470
|
PSYCH_TRANSCODE(tag, encoding, internal_enc);
|
499
|
-
#endif
|
500
471
|
}
|
501
472
|
|
502
473
|
implicit =
|
data/ext/psych/psych_to_ruby.c
CHANGED
@@ -21,11 +21,7 @@ static VALUE build_exception(VALUE self, VALUE klass, VALUE mesg)
|
|
21
21
|
*/
|
22
22
|
static VALUE path2class(VALUE self, VALUE path)
|
23
23
|
{
|
24
|
-
#ifdef HAVE_RUBY_ENCODING_H
|
25
24
|
return rb_path_to_class(path);
|
26
|
-
#else
|
27
|
-
return rb_path2class(StringValuePtr(path));
|
28
|
-
#endif
|
29
25
|
}
|
30
26
|
|
31
27
|
void Init_psych_to_ruby(void)
|
data/ext/psych/yaml/emitter.c
CHANGED
@@ -517,7 +517,7 @@ yaml_emitter_emit_stream_start(yaml_emitter_t *emitter,
|
|
517
517
|
if (emitter->best_width < 0) {
|
518
518
|
emitter->best_width = INT_MAX;
|
519
519
|
}
|
520
|
-
|
520
|
+
|
521
521
|
if (!emitter->line_break) {
|
522
522
|
emitter->line_break = YAML_LN_BREAK;
|
523
523
|
}
|
@@ -607,7 +607,7 @@ yaml_emitter_emit_document_start(yaml_emitter_t *emitter,
|
|
607
607
|
if (!yaml_emitter_write_indent(emitter))
|
608
608
|
return 0;
|
609
609
|
}
|
610
|
-
|
610
|
+
|
611
611
|
if (event->data.document_start.tag_directives.start
|
612
612
|
!= event->data.document_start.tag_directives.end) {
|
613
613
|
implicit = 0;
|
@@ -721,7 +721,7 @@ yaml_emitter_emit_document_end(yaml_emitter_t *emitter,
|
|
721
721
|
}
|
722
722
|
|
723
723
|
/*
|
724
|
-
*
|
724
|
+
*
|
725
725
|
* Expect a flow item node.
|
726
726
|
*/
|
727
727
|
|
@@ -1402,7 +1402,7 @@ yaml_emitter_analyze_anchor(yaml_emitter_t *emitter,
|
|
1402
1402
|
{
|
1403
1403
|
size_t anchor_length;
|
1404
1404
|
yaml_string_t string;
|
1405
|
-
|
1405
|
+
|
1406
1406
|
anchor_length = strlen((char *)anchor);
|
1407
1407
|
STRING_ASSIGN(string, anchor, anchor_length);
|
1408
1408
|
|
data/ext/psych/yaml/loader.c
CHANGED
@@ -239,8 +239,8 @@ yaml_parser_register_anchor(yaml_parser_t *parser,
|
|
239
239
|
if (strcmp((char *)alias_data->anchor, (char *)anchor) == 0) {
|
240
240
|
yaml_free(anchor);
|
241
241
|
return yaml_parser_set_composer_error_context(parser,
|
242
|
-
"found duplicate anchor; first
|
243
|
-
alias_data->mark, "second
|
242
|
+
"found duplicate anchor; first occurrence",
|
243
|
+
alias_data->mark, "second occurrence", data.mark);
|
244
244
|
}
|
245
245
|
}
|
246
246
|
|
data/ext/psych/yaml/parser.c
CHANGED
@@ -1295,7 +1295,7 @@ yaml_parser_process_directives(yaml_parser_t *parser,
|
|
1295
1295
|
token = PEEK_TOKEN(parser);
|
1296
1296
|
if (!token) goto error;
|
1297
1297
|
}
|
1298
|
-
|
1298
|
+
|
1299
1299
|
for (default_tag_directive = default_tag_directives;
|
1300
1300
|
default_tag_directive->handle; default_tag_directive++) {
|
1301
1301
|
if (!yaml_parser_append_tag_directive(parser, *default_tag_directive, 1,
|
data/ext/psych/yaml/reader.c
CHANGED
@@ -52,7 +52,7 @@ yaml_parser_determine_encoding(yaml_parser_t *parser)
|
|
52
52
|
{
|
53
53
|
/* Ensure that we had enough bytes in the raw buffer. */
|
54
54
|
|
55
|
-
while (!parser->eof
|
55
|
+
while (!parser->eof
|
56
56
|
&& parser->raw_buffer.last - parser->raw_buffer.pointer < 3) {
|
57
57
|
if (!yaml_parser_update_raw_buffer(parser)) {
|
58
58
|
return 0;
|
@@ -295,7 +295,7 @@ yaml_parser_update_buffer(yaml_parser_t *parser, size_t length)
|
|
295
295
|
parser->offset, value);
|
296
296
|
|
297
297
|
break;
|
298
|
-
|
298
|
+
|
299
299
|
case YAML_UTF16LE_ENCODING:
|
300
300
|
case YAML_UTF16BE_ENCODING:
|
301
301
|
|
@@ -318,7 +318,7 @@ yaml_parser_update_buffer(yaml_parser_t *parser, size_t length)
|
|
318
318
|
*
|
319
319
|
* The following formulas are used for decoding
|
320
320
|
* and encoding characters using surrogate pairs:
|
321
|
-
*
|
321
|
+
*
|
322
322
|
* U = U' + 0x10000 (0x01 00 00 <= U <= 0x10 FF FF)
|
323
323
|
* U' = yyyyyyyyyyxxxxxxxxxx (0 <= U' <= 0x0F FF FF)
|
324
324
|
* W1 = 110110yyyyyyyyyy
|
data/ext/psych/yaml/scanner.c
CHANGED
@@ -70,7 +70,7 @@
|
|
70
70
|
* %TAG !yaml! tag:yaml.org,2002:
|
71
71
|
* ---
|
72
72
|
*
|
73
|
-
* The
|
73
|
+
* The corresponding sequence of tokens:
|
74
74
|
*
|
75
75
|
* STREAM-START(utf-8)
|
76
76
|
* VERSION-DIRECTIVE(1,1)
|
@@ -762,7 +762,7 @@ yaml_parser_scan(yaml_parser_t *parser, yaml_token_t *token)
|
|
762
762
|
}
|
763
763
|
|
764
764
|
/* Fetch the next token from the queue. */
|
765
|
-
|
765
|
+
|
766
766
|
*token = DEQUEUE(parser, parser->tokens);
|
767
767
|
parser->token_available = 0;
|
768
768
|
parser->tokens_parsed ++;
|
@@ -1114,7 +1114,7 @@ yaml_parser_save_simple_key(yaml_parser_t *parser)
|
|
1114
1114
|
yaml_simple_key_t simple_key;
|
1115
1115
|
simple_key.possible = 1;
|
1116
1116
|
simple_key.required = required;
|
1117
|
-
simple_key.token_number =
|
1117
|
+
simple_key.token_number =
|
1118
1118
|
parser->tokens_parsed + (parser->tokens.tail - parser->tokens.head);
|
1119
1119
|
simple_key.mark = parser->mark;
|
1120
1120
|
|
@@ -1200,7 +1200,7 @@ yaml_parser_decrease_flow_level(yaml_parser_t *parser)
|
|
1200
1200
|
* Push the current indentation level to the stack and set the new level
|
1201
1201
|
* the current column is greater than the indentation level. In this case,
|
1202
1202
|
* append or insert the specified token into the token queue.
|
1203
|
-
*
|
1203
|
+
*
|
1204
1204
|
*/
|
1205
1205
|
|
1206
1206
|
static int
|
@@ -1251,7 +1251,7 @@ yaml_parser_roll_indent(yaml_parser_t *parser, ptrdiff_t column,
|
|
1251
1251
|
|
1252
1252
|
/*
|
1253
1253
|
* Pop indentation levels from the indents stack until the current level
|
1254
|
-
* becomes less or equal to the column. For each
|
1254
|
+
* becomes less or equal to the column. For each indentation level, append
|
1255
1255
|
* the BLOCK-END token.
|
1256
1256
|
*/
|
1257
1257
|
|
@@ -1266,7 +1266,7 @@ yaml_parser_unroll_indent(yaml_parser_t *parser, ptrdiff_t column)
|
|
1266
1266
|
if (parser->flow_level)
|
1267
1267
|
return 1;
|
1268
1268
|
|
1269
|
-
/* Loop through the
|
1269
|
+
/* Loop through the indentation levels in the stack. */
|
1270
1270
|
|
1271
1271
|
while (parser->indent > column)
|
1272
1272
|
{
|
@@ -1938,7 +1938,7 @@ yaml_parser_scan_to_next_token(yaml_parser_t *parser)
|
|
1938
1938
|
*
|
1939
1939
|
* - in the flow context;
|
1940
1940
|
* - in the block context, but not at the beginning of the line or
|
1941
|
-
* after '-', '?', or ':' (complex value).
|
1941
|
+
* after '-', '?', or ':' (complex value).
|
1942
1942
|
*/
|
1943
1943
|
|
1944
1944
|
if (!CACHE(parser, 1)) return 0;
|
@@ -2053,7 +2053,7 @@ yaml_parser_scan_directive(yaml_parser_t *parser, yaml_token_t *token)
|
|
2053
2053
|
else
|
2054
2054
|
{
|
2055
2055
|
yaml_parser_set_scanner_error(parser, "while scanning a directive",
|
2056
|
-
start_mark, "found
|
2056
|
+
start_mark, "found unknown directive name");
|
2057
2057
|
goto error;
|
2058
2058
|
}
|
2059
2059
|
|
@@ -2775,15 +2775,15 @@ yaml_parser_scan_block_scalar(yaml_parser_t *parser, yaml_token_t *token,
|
|
2775
2775
|
|
2776
2776
|
if (IS_DIGIT(parser->buffer))
|
2777
2777
|
{
|
2778
|
-
/* Check that the
|
2778
|
+
/* Check that the indentation is greater than 0. */
|
2779
2779
|
|
2780
2780
|
if (CHECK(parser->buffer, '0')) {
|
2781
2781
|
yaml_parser_set_scanner_error(parser, "while scanning a block scalar",
|
2782
|
-
start_mark, "found an
|
2782
|
+
start_mark, "found an indentation indicator equal to 0");
|
2783
2783
|
goto error;
|
2784
2784
|
}
|
2785
2785
|
|
2786
|
-
/* Get the
|
2786
|
+
/* Get the indentation level and eat the indicator. */
|
2787
2787
|
|
2788
2788
|
increment = AS_DIGIT(parser->buffer);
|
2789
2789
|
|
@@ -2797,7 +2797,7 @@ yaml_parser_scan_block_scalar(yaml_parser_t *parser, yaml_token_t *token,
|
|
2797
2797
|
{
|
2798
2798
|
if (CHECK(parser->buffer, '0')) {
|
2799
2799
|
yaml_parser_set_scanner_error(parser, "while scanning a block scalar",
|
2800
|
-
start_mark, "found an
|
2800
|
+
start_mark, "found an indentation indicator equal to 0");
|
2801
2801
|
goto error;
|
2802
2802
|
}
|
2803
2803
|
|
@@ -2847,7 +2847,7 @@ yaml_parser_scan_block_scalar(yaml_parser_t *parser, yaml_token_t *token,
|
|
2847
2847
|
|
2848
2848
|
end_mark = parser->mark;
|
2849
2849
|
|
2850
|
-
/* Set the
|
2850
|
+
/* Set the indentation level if it was specified. */
|
2851
2851
|
|
2852
2852
|
if (increment) {
|
2853
2853
|
indent = parser->indent >= 0 ? parser->indent+increment : increment;
|
@@ -2913,7 +2913,7 @@ yaml_parser_scan_block_scalar(yaml_parser_t *parser, yaml_token_t *token,
|
|
2913
2913
|
|
2914
2914
|
if (!READ_LINE(parser, leading_break)) goto error;
|
2915
2915
|
|
2916
|
-
/* Eat the following
|
2916
|
+
/* Eat the following indentation spaces and line breaks. */
|
2917
2917
|
|
2918
2918
|
if (!yaml_parser_scan_block_scalar_breaks(parser,
|
2919
2919
|
&indent, &trailing_breaks, start_mark, &end_mark)) goto error;
|
@@ -2948,8 +2948,8 @@ error:
|
|
2948
2948
|
}
|
2949
2949
|
|
2950
2950
|
/*
|
2951
|
-
* Scan
|
2952
|
-
*
|
2951
|
+
* Scan indentation spaces and line breaks for a block scalar. Determine the
|
2952
|
+
* indentation level if needed.
|
2953
2953
|
*/
|
2954
2954
|
|
2955
2955
|
static int
|
@@ -2961,11 +2961,11 @@ yaml_parser_scan_block_scalar_breaks(yaml_parser_t *parser,
|
|
2961
2961
|
|
2962
2962
|
*end_mark = parser->mark;
|
2963
2963
|
|
2964
|
-
/* Eat the
|
2964
|
+
/* Eat the indentation spaces and line breaks. */
|
2965
2965
|
|
2966
2966
|
while (1)
|
2967
2967
|
{
|
2968
|
-
/* Eat the
|
2968
|
+
/* Eat the indentation spaces. */
|
2969
2969
|
|
2970
2970
|
if (!CACHE(parser, 1)) return 0;
|
2971
2971
|
|
@@ -2978,12 +2978,12 @@ yaml_parser_scan_block_scalar_breaks(yaml_parser_t *parser,
|
|
2978
2978
|
if ((int)parser->mark.column > max_indent)
|
2979
2979
|
max_indent = (int)parser->mark.column;
|
2980
2980
|
|
2981
|
-
/* Check for a tab character messing the
|
2981
|
+
/* Check for a tab character messing the indentation. */
|
2982
2982
|
|
2983
2983
|
if ((!*indent || (int)parser->mark.column < *indent)
|
2984
2984
|
&& IS_TAB(parser->buffer)) {
|
2985
2985
|
return yaml_parser_set_scanner_error(parser, "while scanning a block scalar",
|
2986
|
-
start_mark, "found a tab character where an
|
2986
|
+
start_mark, "found a tab character where an indentation space is expected");
|
2987
2987
|
}
|
2988
2988
|
|
2989
2989
|
/* Have we found a non-empty line? */
|
@@ -3007,7 +3007,7 @@ yaml_parser_scan_block_scalar_breaks(yaml_parser_t *parser,
|
|
3007
3007
|
*indent = 1;
|
3008
3008
|
}
|
3009
3009
|
|
3010
|
-
return 1;
|
3010
|
+
return 1;
|
3011
3011
|
}
|
3012
3012
|
|
3013
3013
|
/*
|
@@ -3504,12 +3504,12 @@ yaml_parser_scan_plain_scalar(yaml_parser_t *parser, yaml_token_t *token)
|
|
3504
3504
|
{
|
3505
3505
|
if (IS_BLANK(parser->buffer))
|
3506
3506
|
{
|
3507
|
-
/* Check for tab character that abuse
|
3507
|
+
/* Check for tab character that abuse indentation. */
|
3508
3508
|
|
3509
3509
|
if (leading_blanks && (int)parser->mark.column < indent
|
3510
3510
|
&& IS_TAB(parser->buffer)) {
|
3511
3511
|
yaml_parser_set_scanner_error(parser, "while scanning a plain scalar",
|
3512
|
-
start_mark, "found a tab character that violate
|
3512
|
+
start_mark, "found a tab character that violate indentation");
|
3513
3513
|
goto error;
|
3514
3514
|
}
|
3515
3515
|
|
@@ -3542,7 +3542,7 @@ yaml_parser_scan_plain_scalar(yaml_parser_t *parser, yaml_token_t *token)
|
|
3542
3542
|
if (!CACHE(parser, 1)) goto error;
|
3543
3543
|
}
|
3544
3544
|
|
3545
|
-
/* Check
|
3545
|
+
/* Check indentation level. */
|
3546
3546
|
|
3547
3547
|
if (!parser->flow_level && (int)parser->mark.column < indent)
|
3548
3548
|
break;
|