psych 3.1.0 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +6 -0
- data/LICENSE +21 -0
- data/README.md +0 -3
- data/Rakefile +1 -15
- data/ext/psych/depend +2 -0
- data/ext/psych/extconf.rb +6 -2
- data/ext/psych/psych.c +3 -3
- data/ext/psych/psych_parser.c +20 -33
- data/ext/psych/psych_yaml_tree.c +0 -12
- data/ext/psych/yaml/api.c +22 -22
- data/ext/psych/yaml/config.h +76 -6
- data/ext/psych/yaml/dumper.c +1 -1
- data/ext/psych/yaml/emitter.c +44 -10
- data/ext/psych/yaml/loader.c +206 -106
- data/ext/psych/yaml/parser.c +6 -1
- data/ext/psych/yaml/scanner.c +43 -23
- data/ext/psych/yaml/yaml.h +44 -30
- data/ext/psych/yaml/yaml_private.h +3 -3
- data/lib/psych.rb +10 -25
- data/lib/psych/nodes/node.rb +2 -2
- data/lib/psych/scalar_scanner.rb +23 -36
- data/lib/psych/versions.rb +2 -2
- data/lib/psych/visitors/to_ruby.rb +42 -11
- data/lib/psych/visitors/yaml_tree.rb +29 -41
- data/psych.gemspec +8 -15
- metadata +9 -54
- data/.travis.yml +0 -22
- data/CHANGELOG.rdoc +0 -583
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8d2864bd6b2ce0aa8d9c7a1793c6531d582ce5591f61fa77a5147b495a0eacff
|
4
|
+
data.tar.gz: fb30e5a5a677c813e058366c8ee1339c986c65f9bc51f69e94771d31199ae7e8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7c2fcf1411c11ff9e7479b79564fc1114c76f12a7b6c6a9ad983f8d565691bcc5b012f0db28529974f1fd274929452b99366af885d094b596da625568149a456
|
7
|
+
data.tar.gz: 433269e6942d6b1e8812bee88844816aafe7b67c2e58ad51ecf4ddfa45e3c8a99f7265b0a7bb48e4dfc758142fa6503c1b17a2e35036c4bad56dc28fe73414f5
|
data/Gemfile
CHANGED
data/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
Copyright (c) 2009 Aaron Patterson, et al.
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
data/README.md
CHANGED
@@ -1,8 +1,5 @@
|
|
1
1
|
# Psych
|
2
2
|
|
3
|
-
[](https://travis-ci.org/ruby/psych)
|
4
|
-
[](https://ci.appveyor.com/project/ruby/psych/branch/master)
|
5
|
-
|
6
3
|
* https://github.com/ruby/psych
|
7
4
|
|
8
5
|
## Description
|
data/Rakefile
CHANGED
@@ -28,21 +28,7 @@ if RUBY_PLATFORM =~ /java/
|
|
28
28
|
end
|
29
29
|
else
|
30
30
|
require 'rake/extensiontask'
|
31
|
-
|
32
|
-
Rake::ExtensionTask.new("psych", spec) do |ext|
|
33
|
-
ext.lib_dir = File.join(*['lib', ENV['FAT_DIR']].compact)
|
34
|
-
ext.cross_compile = true
|
35
|
-
ext.cross_platform = %w[x86-mingw32 x64-mingw32]
|
36
|
-
ext.cross_compiling do |s|
|
37
|
-
s.files.concat ["lib/2.3/psych.so", "lib/2.4/psych.so", "lib/2.5/psych.so"]
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
41
|
-
|
42
|
-
desc "Compile binaries for mingw platform using rake-compiler-dock"
|
43
|
-
task 'build:mingw' do
|
44
|
-
require 'rake_compiler_dock'
|
45
|
-
RakeCompilerDock.sh "bundle && rake cross native gem RUBY_CC_VERSION=2.5.0:2.4.0:2.3.0"
|
31
|
+
Rake::ExtensionTask.new("psych")
|
46
32
|
end
|
47
33
|
|
48
34
|
task :default => [:compile, :test]
|
data/ext/psych/depend
CHANGED
data/ext/psych/extconf.rb
CHANGED
@@ -13,8 +13,10 @@ if enable_config("bundled-libyaml", false) || !(find_header('yaml.h') && find_li
|
|
13
13
|
$VPATH << "$(srcdir)/yaml"
|
14
14
|
$INCFLAGS << " -I$(srcdir)/yaml"
|
15
15
|
|
16
|
-
$srcs = Dir.glob("#{$srcdir}/{,yaml/}*.c").map {|n| File.basename(n)}
|
16
|
+
$srcs = Dir.glob("#{$srcdir}/{,yaml/}*.c").map {|n| File.basename(n)}.sort
|
17
17
|
|
18
|
+
header = 'yaml/yaml.h'
|
19
|
+
header = "{$(VPATH)}#{header}" if $nmake
|
18
20
|
if have_macro("_WIN32")
|
19
21
|
$CPPFLAGS << " -DYAML_DECLARE_STATIC -DHAVE_CONFIG_H"
|
20
22
|
end
|
@@ -34,6 +36,8 @@ if enable_config("bundled-libyaml", false) || !(find_header('yaml.h') && find_li
|
|
34
36
|
have_header 'config.h'
|
35
37
|
end
|
36
38
|
|
37
|
-
create_makefile 'psych'
|
39
|
+
create_makefile 'psych' do |mk|
|
40
|
+
mk << "YAML_H = #{header}".strip << "\n"
|
41
|
+
end
|
38
42
|
|
39
43
|
# :startdoc:
|
data/ext/psych/psych.c
CHANGED
@@ -11,9 +11,9 @@ static VALUE libyaml_version(VALUE module)
|
|
11
11
|
|
12
12
|
yaml_get_version(&major, &minor, &patch);
|
13
13
|
|
14
|
-
list[0] = INT2NUM(
|
15
|
-
list[1] = INT2NUM(
|
16
|
-
list[2] = INT2NUM(
|
14
|
+
list[0] = INT2NUM(major);
|
15
|
+
list[1] = INT2NUM(minor);
|
16
|
+
list[2] = INT2NUM(patch);
|
17
17
|
|
18
18
|
return rb_ary_new4((long)3, list);
|
19
19
|
}
|
data/ext/psych/psych_parser.c
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
#include <psych.h>
|
2
2
|
|
3
3
|
VALUE cPsychParser;
|
4
|
-
VALUE ePsychSyntaxError;
|
5
4
|
|
6
5
|
static ID id_read;
|
7
6
|
static ID id_path;
|
@@ -28,7 +27,7 @@ static ID id_event_location;
|
|
28
27
|
static int io_reader(void * data, unsigned char *buf, size_t size, size_t *read)
|
29
28
|
{
|
30
29
|
VALUE io = (VALUE)data;
|
31
|
-
VALUE string = rb_funcall(io, id_read, 1,
|
30
|
+
VALUE string = rb_funcall(io, id_read, 1, SIZET2NUM(size));
|
32
31
|
|
33
32
|
*read = 0;
|
34
33
|
|
@@ -81,15 +80,18 @@ static VALUE allocate(VALUE klass)
|
|
81
80
|
static VALUE make_exception(yaml_parser_t * parser, VALUE path)
|
82
81
|
{
|
83
82
|
size_t line, column;
|
83
|
+
VALUE ePsychSyntaxError;
|
84
84
|
|
85
85
|
line = parser->context_mark.line + 1;
|
86
86
|
column = parser->context_mark.column + 1;
|
87
87
|
|
88
|
+
ePsychSyntaxError = rb_const_get(mPsych, rb_intern("SyntaxError"));
|
89
|
+
|
88
90
|
return rb_funcall(ePsychSyntaxError, rb_intern("new"), 6,
|
89
91
|
path,
|
90
|
-
|
91
|
-
|
92
|
-
|
92
|
+
SIZET2NUM(line),
|
93
|
+
SIZET2NUM(column),
|
94
|
+
SIZET2NUM(parser->problem_offset),
|
93
95
|
parser->problem ? rb_usascii_str_new2(parser->problem) : Qnil,
|
94
96
|
parser->context ? rb_usascii_str_new2(parser->context) : Qnil);
|
95
97
|
}
|
@@ -254,7 +256,6 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
254
256
|
yaml_parser_t * parser;
|
255
257
|
yaml_event_t event;
|
256
258
|
int done = 0;
|
257
|
-
int tainted = 0;
|
258
259
|
int state = 0;
|
259
260
|
int parser_encoding = YAML_ANY_ENCODING;
|
260
261
|
int encoding = rb_utf8_encindex();
|
@@ -273,13 +274,10 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
273
274
|
yaml_parser_delete(parser);
|
274
275
|
yaml_parser_initialize(parser);
|
275
276
|
|
276
|
-
if (OBJ_TAINTED(yaml)) tainted = 1;
|
277
|
-
|
278
277
|
if (rb_respond_to(yaml, id_read)) {
|
279
278
|
yaml = transcode_io(yaml, &parser_encoding);
|
280
279
|
yaml_parser_set_encoding(parser, parser_encoding);
|
281
280
|
yaml_parser_set_input(parser, io_reader, (void *)yaml);
|
282
|
-
if (RTEST(rb_obj_is_kind_of(yaml, rb_cIO))) tainted = 1;
|
283
281
|
} else {
|
284
282
|
StringValue(yaml);
|
285
283
|
yaml = transcode_string(yaml, &parser_encoding);
|
@@ -305,10 +303,10 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
305
303
|
rb_exc_raise(exception);
|
306
304
|
}
|
307
305
|
|
308
|
-
start_line =
|
309
|
-
start_column =
|
310
|
-
end_line =
|
311
|
-
end_column =
|
306
|
+
start_line = SIZET2NUM(event.start_mark.line);
|
307
|
+
start_column = SIZET2NUM(event.start_mark.column);
|
308
|
+
end_line = SIZET2NUM(event.end_mark.line);
|
309
|
+
end_column = SIZET2NUM(event.end_mark.column);
|
312
310
|
|
313
311
|
event_args[0] = handler;
|
314
312
|
event_args[1] = start_line;
|
@@ -323,7 +321,7 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
323
321
|
VALUE args[2];
|
324
322
|
|
325
323
|
args[0] = handler;
|
326
|
-
args[1] = INT2NUM(
|
324
|
+
args[1] = INT2NUM(event.data.stream_start.encoding);
|
327
325
|
rb_protect(protected_start_stream, (VALUE)args, &state);
|
328
326
|
}
|
329
327
|
break;
|
@@ -336,8 +334,8 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
336
334
|
VALUE version = event.data.document_start.version_directive ?
|
337
335
|
rb_ary_new3(
|
338
336
|
(long)2,
|
339
|
-
INT2NUM(
|
340
|
-
INT2NUM(
|
337
|
+
INT2NUM(event.data.document_start.version_directive->major),
|
338
|
+
INT2NUM(event.data.document_start.version_directive->minor)
|
341
339
|
) : rb_ary_new();
|
342
340
|
|
343
341
|
if(event.data.document_start.tag_directives.start) {
|
@@ -350,13 +348,11 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
350
348
|
VALUE prefix = Qnil;
|
351
349
|
if(start->handle) {
|
352
350
|
handle = rb_str_new2((const char *)start->handle);
|
353
|
-
if (tainted) OBJ_TAINT(handle);
|
354
351
|
PSYCH_TRANSCODE(handle, encoding, internal_enc);
|
355
352
|
}
|
356
353
|
|
357
354
|
if(start->prefix) {
|
358
355
|
prefix = rb_str_new2((const char *)start->prefix);
|
359
|
-
if (tainted) OBJ_TAINT(prefix);
|
360
356
|
PSYCH_TRANSCODE(prefix, encoding, internal_enc);
|
361
357
|
}
|
362
358
|
|
@@ -385,7 +381,6 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
385
381
|
VALUE alias = Qnil;
|
386
382
|
if(event.data.alias.anchor) {
|
387
383
|
alias = rb_str_new2((const char *)event.data.alias.anchor);
|
388
|
-
if (tainted) OBJ_TAINT(alias);
|
389
384
|
PSYCH_TRANSCODE(alias, encoding, internal_enc);
|
390
385
|
}
|
391
386
|
|
@@ -404,19 +399,16 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
404
399
|
(const char *)event.data.scalar.value,
|
405
400
|
(long)event.data.scalar.length
|
406
401
|
);
|
407
|
-
if (tainted) OBJ_TAINT(val);
|
408
402
|
|
409
403
|
PSYCH_TRANSCODE(val, encoding, internal_enc);
|
410
404
|
|
411
405
|
if(event.data.scalar.anchor) {
|
412
406
|
anchor = rb_str_new2((const char *)event.data.scalar.anchor);
|
413
|
-
if (tainted) OBJ_TAINT(anchor);
|
414
407
|
PSYCH_TRANSCODE(anchor, encoding, internal_enc);
|
415
408
|
}
|
416
409
|
|
417
410
|
if(event.data.scalar.tag) {
|
418
411
|
tag = rb_str_new2((const char *)event.data.scalar.tag);
|
419
|
-
if (tainted) OBJ_TAINT(tag);
|
420
412
|
PSYCH_TRANSCODE(tag, encoding, internal_enc);
|
421
413
|
}
|
422
414
|
|
@@ -426,7 +418,7 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
426
418
|
quoted_implicit =
|
427
419
|
event.data.scalar.quoted_implicit == 0 ? Qfalse : Qtrue;
|
428
420
|
|
429
|
-
style = INT2NUM(
|
421
|
+
style = INT2NUM(event.data.scalar.style);
|
430
422
|
|
431
423
|
args[0] = handler;
|
432
424
|
args[1] = val;
|
@@ -446,21 +438,19 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
446
438
|
VALUE implicit, style;
|
447
439
|
if(event.data.sequence_start.anchor) {
|
448
440
|
anchor = rb_str_new2((const char *)event.data.sequence_start.anchor);
|
449
|
-
if (tainted) OBJ_TAINT(anchor);
|
450
441
|
PSYCH_TRANSCODE(anchor, encoding, internal_enc);
|
451
442
|
}
|
452
443
|
|
453
444
|
tag = Qnil;
|
454
445
|
if(event.data.sequence_start.tag) {
|
455
446
|
tag = rb_str_new2((const char *)event.data.sequence_start.tag);
|
456
|
-
if (tainted) OBJ_TAINT(tag);
|
457
447
|
PSYCH_TRANSCODE(tag, encoding, internal_enc);
|
458
448
|
}
|
459
449
|
|
460
450
|
implicit =
|
461
451
|
event.data.sequence_start.implicit == 0 ? Qfalse : Qtrue;
|
462
452
|
|
463
|
-
style = INT2NUM(
|
453
|
+
style = INT2NUM(event.data.sequence_start.style);
|
464
454
|
|
465
455
|
args[0] = handler;
|
466
456
|
args[1] = anchor;
|
@@ -482,20 +472,18 @@ static VALUE parse(int argc, VALUE *argv, VALUE self)
|
|
482
472
|
VALUE implicit, style;
|
483
473
|
if(event.data.mapping_start.anchor) {
|
484
474
|
anchor = rb_str_new2((const char *)event.data.mapping_start.anchor);
|
485
|
-
if (tainted) OBJ_TAINT(anchor);
|
486
475
|
PSYCH_TRANSCODE(anchor, encoding, internal_enc);
|
487
476
|
}
|
488
477
|
|
489
478
|
if(event.data.mapping_start.tag) {
|
490
479
|
tag = rb_str_new2((const char *)event.data.mapping_start.tag);
|
491
|
-
if (tainted) OBJ_TAINT(tag);
|
492
480
|
PSYCH_TRANSCODE(tag, encoding, internal_enc);
|
493
481
|
}
|
494
482
|
|
495
483
|
implicit =
|
496
484
|
event.data.mapping_start.implicit == 0 ? Qfalse : Qtrue;
|
497
485
|
|
498
|
-
style = INT2NUM(
|
486
|
+
style = INT2NUM(event.data.mapping_start.style);
|
499
487
|
|
500
488
|
args[0] = handler;
|
501
489
|
args[1] = anchor;
|
@@ -539,9 +527,9 @@ static VALUE mark(VALUE self)
|
|
539
527
|
|
540
528
|
TypedData_Get_Struct(self, yaml_parser_t, &psych_parser_type, parser);
|
541
529
|
mark_klass = rb_const_get_at(cPsychParser, rb_intern("Mark"));
|
542
|
-
args[0] =
|
543
|
-
args[1] =
|
544
|
-
args[2] =
|
530
|
+
args[0] = SIZET2NUM(parser->mark.index);
|
531
|
+
args[1] = SIZET2NUM(parser->mark.line);
|
532
|
+
args[2] = SIZET2NUM(parser->mark.column);
|
545
533
|
|
546
534
|
return rb_class_new_instance(3, args, mark_klass);
|
547
535
|
}
|
@@ -569,7 +557,6 @@ void Init_psych_parser(void)
|
|
569
557
|
rb_define_const(cPsychParser, "UTF16BE", INT2NUM(YAML_UTF16BE_ENCODING));
|
570
558
|
|
571
559
|
rb_require("psych/syntax_error");
|
572
|
-
ePsychSyntaxError = rb_const_get(mPsych, rb_intern("SyntaxError"));
|
573
560
|
|
574
561
|
rb_define_method(cPsychParser, "parse", parse, -1);
|
575
562
|
rb_define_method(cPsychParser, "mark", mark, 0);
|
data/ext/psych/psych_yaml_tree.c
CHANGED
@@ -2,23 +2,11 @@
|
|
2
2
|
|
3
3
|
VALUE cPsychVisitorsYamlTree;
|
4
4
|
|
5
|
-
/*
|
6
|
-
* call-seq: private_iv_get(target, prop)
|
7
|
-
*
|
8
|
-
* Get the private instance variable +prop+ from +target+
|
9
|
-
*/
|
10
|
-
static VALUE private_iv_get(VALUE self, VALUE target, VALUE prop)
|
11
|
-
{
|
12
|
-
return rb_attr_get(target, rb_intern(StringValueCStr(prop)));
|
13
|
-
}
|
14
|
-
|
15
5
|
void Init_psych_yaml_tree(void)
|
16
6
|
{
|
17
7
|
VALUE psych = rb_define_module("Psych");
|
18
8
|
VALUE visitors = rb_define_module_under(psych, "Visitors");
|
19
9
|
VALUE visitor = rb_define_class_under(visitors, "Visitor", rb_cObject);
|
20
10
|
cPsychVisitorsYamlTree = rb_define_class_under(visitors, "YAMLTree", visitor);
|
21
|
-
|
22
|
-
rb_define_private_method(cPsychVisitorsYamlTree, "private_iv_get", private_iv_get, 2);
|
23
11
|
}
|
24
12
|
/* vim: set noet sws=4 sw=4: */
|
data/ext/psych/yaml/api.c
CHANGED
@@ -118,7 +118,12 @@ yaml_string_join(
|
|
118
118
|
YAML_DECLARE(int)
|
119
119
|
yaml_stack_extend(void **start, void **top, void **end)
|
120
120
|
{
|
121
|
-
void *new_start
|
121
|
+
void *new_start;
|
122
|
+
|
123
|
+
if ((char *)*end - (char *)*start >= INT_MAX / 2)
|
124
|
+
return 0;
|
125
|
+
|
126
|
+
new_start = yaml_realloc(*start, ((char *)*end - (char *)*start)*2);
|
122
127
|
|
123
128
|
if (!new_start) return 0;
|
124
129
|
|
@@ -618,10 +623,10 @@ yaml_token_delete(yaml_token_t *token)
|
|
618
623
|
*/
|
619
624
|
|
620
625
|
static int
|
621
|
-
yaml_check_utf8(yaml_char_t *start, size_t length)
|
626
|
+
yaml_check_utf8(const yaml_char_t *start, size_t length)
|
622
627
|
{
|
623
|
-
yaml_char_t *end = start+length;
|
624
|
-
yaml_char_t *pointer = start;
|
628
|
+
const yaml_char_t *end = start+length;
|
629
|
+
const yaml_char_t *pointer = start;
|
625
630
|
|
626
631
|
while (pointer < end) {
|
627
632
|
unsigned char octet;
|
@@ -789,7 +794,7 @@ yaml_document_end_event_initialize(yaml_event_t *event, int implicit)
|
|
789
794
|
*/
|
790
795
|
|
791
796
|
YAML_DECLARE(int)
|
792
|
-
yaml_alias_event_initialize(yaml_event_t *event, yaml_char_t *anchor)
|
797
|
+
yaml_alias_event_initialize(yaml_event_t *event, const yaml_char_t *anchor)
|
793
798
|
{
|
794
799
|
yaml_mark_t mark = { 0, 0, 0 };
|
795
800
|
yaml_char_t *anchor_copy = NULL;
|
@@ -814,8 +819,8 @@ yaml_alias_event_initialize(yaml_event_t *event, yaml_char_t *anchor)
|
|
814
819
|
|
815
820
|
YAML_DECLARE(int)
|
816
821
|
yaml_scalar_event_initialize(yaml_event_t *event,
|
817
|
-
yaml_char_t *anchor, yaml_char_t *tag,
|
818
|
-
yaml_char_t *value, int length,
|
822
|
+
const yaml_char_t *anchor, const yaml_char_t *tag,
|
823
|
+
const yaml_char_t *value, int length,
|
819
824
|
int plain_implicit, int quoted_implicit,
|
820
825
|
yaml_scalar_style_t style)
|
821
826
|
{
|
@@ -840,7 +845,7 @@ yaml_scalar_event_initialize(yaml_event_t *event,
|
|
840
845
|
}
|
841
846
|
|
842
847
|
if (length < 0) {
|
843
|
-
length = strlen((char *)value);
|
848
|
+
length = (int)strlen((char *)value);
|
844
849
|
}
|
845
850
|
|
846
851
|
if (!yaml_check_utf8(value, length)) goto error;
|
@@ -868,7 +873,7 @@ error:
|
|
868
873
|
|
869
874
|
YAML_DECLARE(int)
|
870
875
|
yaml_sequence_start_event_initialize(yaml_event_t *event,
|
871
|
-
yaml_char_t *anchor, yaml_char_t *tag, int implicit,
|
876
|
+
const yaml_char_t *anchor, const yaml_char_t *tag, int implicit,
|
872
877
|
yaml_sequence_style_t style)
|
873
878
|
{
|
874
879
|
yaml_mark_t mark = { 0, 0, 0 };
|
@@ -923,7 +928,7 @@ yaml_sequence_end_event_initialize(yaml_event_t *event)
|
|
923
928
|
|
924
929
|
YAML_DECLARE(int)
|
925
930
|
yaml_mapping_start_event_initialize(yaml_event_t *event,
|
926
|
-
yaml_char_t *anchor, yaml_char_t *tag, int implicit,
|
931
|
+
const yaml_char_t *anchor, const yaml_char_t *tag, int implicit,
|
927
932
|
yaml_mapping_style_t style)
|
928
933
|
{
|
929
934
|
yaml_mark_t mark = { 0, 0, 0 };
|
@@ -1117,13 +1122,8 @@ error:
|
|
1117
1122
|
YAML_DECLARE(void)
|
1118
1123
|
yaml_document_delete(yaml_document_t *document)
|
1119
1124
|
{
|
1120
|
-
struct {
|
1121
|
-
yaml_error_type_t error;
|
1122
|
-
} context;
|
1123
1125
|
yaml_tag_directive_t *tag_directive;
|
1124
1126
|
|
1125
|
-
context.error = YAML_NO_ERROR; /* Eliminate a compliler warning. */
|
1126
|
-
|
1127
1127
|
assert(document); /* Non-NULL document object is expected. */
|
1128
1128
|
|
1129
1129
|
while (!STACK_EMPTY(&context, document->nodes)) {
|
@@ -1193,7 +1193,7 @@ yaml_document_get_root_node(yaml_document_t *document)
|
|
1193
1193
|
|
1194
1194
|
YAML_DECLARE(int)
|
1195
1195
|
yaml_document_add_scalar(yaml_document_t *document,
|
1196
|
-
yaml_char_t *tag, yaml_char_t *value, int length,
|
1196
|
+
const yaml_char_t *tag, const yaml_char_t *value, int length,
|
1197
1197
|
yaml_scalar_style_t style)
|
1198
1198
|
{
|
1199
1199
|
struct {
|
@@ -1216,7 +1216,7 @@ yaml_document_add_scalar(yaml_document_t *document,
|
|
1216
1216
|
if (!tag_copy) goto error;
|
1217
1217
|
|
1218
1218
|
if (length < 0) {
|
1219
|
-
length = strlen((char *)value);
|
1219
|
+
length = (int)strlen((char *)value);
|
1220
1220
|
}
|
1221
1221
|
|
1222
1222
|
if (!yaml_check_utf8(value, length)) goto error;
|
@@ -1228,7 +1228,7 @@ yaml_document_add_scalar(yaml_document_t *document,
|
|
1228
1228
|
SCALAR_NODE_INIT(node, tag_copy, value_copy, length, style, mark, mark);
|
1229
1229
|
if (!PUSH(&context, document->nodes, node)) goto error;
|
1230
1230
|
|
1231
|
-
return document->nodes.top - document->nodes.start;
|
1231
|
+
return (int)(document->nodes.top - document->nodes.start);
|
1232
1232
|
|
1233
1233
|
error:
|
1234
1234
|
yaml_free(tag_copy);
|
@@ -1243,7 +1243,7 @@ error:
|
|
1243
1243
|
|
1244
1244
|
YAML_DECLARE(int)
|
1245
1245
|
yaml_document_add_sequence(yaml_document_t *document,
|
1246
|
-
yaml_char_t *tag, yaml_sequence_style_t style)
|
1246
|
+
const yaml_char_t *tag, yaml_sequence_style_t style)
|
1247
1247
|
{
|
1248
1248
|
struct {
|
1249
1249
|
yaml_error_type_t error;
|
@@ -1273,7 +1273,7 @@ yaml_document_add_sequence(yaml_document_t *document,
|
|
1273
1273
|
style, mark, mark);
|
1274
1274
|
if (!PUSH(&context, document->nodes, node)) goto error;
|
1275
1275
|
|
1276
|
-
return document->nodes.top - document->nodes.start;
|
1276
|
+
return (int)(document->nodes.top - document->nodes.start);
|
1277
1277
|
|
1278
1278
|
error:
|
1279
1279
|
STACK_DEL(&context, items);
|
@@ -1288,7 +1288,7 @@ error:
|
|
1288
1288
|
|
1289
1289
|
YAML_DECLARE(int)
|
1290
1290
|
yaml_document_add_mapping(yaml_document_t *document,
|
1291
|
-
yaml_char_t *tag, yaml_mapping_style_t style)
|
1291
|
+
const yaml_char_t *tag, yaml_mapping_style_t style)
|
1292
1292
|
{
|
1293
1293
|
struct {
|
1294
1294
|
yaml_error_type_t error;
|
@@ -1318,7 +1318,7 @@ yaml_document_add_mapping(yaml_document_t *document,
|
|
1318
1318
|
style, mark, mark);
|
1319
1319
|
if (!PUSH(&context, document->nodes, node)) goto error;
|
1320
1320
|
|
1321
|
-
return document->nodes.top - document->nodes.start;
|
1321
|
+
return (int)(document->nodes.top - document->nodes.start);
|
1322
1322
|
|
1323
1323
|
error:
|
1324
1324
|
STACK_DEL(&context, pairs);
|