summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authornick evans <[email protected]>2024-11-08 10:00:46 -0500
committerHiroshi SHIBATA <[email protected]>2025-05-02 09:49:15 +0900
commita1e627b7e3a081a9ab52b04ef4a8e4930caa0cf2 ()
tree1228026f1ed93e7cff7dfc87a5c510d294c07b1a /ext
parent5d0708378ea0813b8a912e458a73c05b5d05f915 (diff)
[ruby/psych] Use `rb_struct_initialize` to initialize Data
https://.com/ruby/psych/commit/3573fb356e
-rw-r--r--ext/psych/lib/psych/visitors/to_ruby.rb3
-rw-r--r--ext/psych/psych_to_ruby.c10
2 files changed, 12 insertions, 1 deletions
@@ -219,7 +219,8 @@ module Psych
revive_data_members(members, o)
end
data ||= allocate_anon_data(o, members)
- data.send(:initialize, **members)
data
when /^!ruby\/object:?(.*)?$/
@@ -24,6 +24,15 @@ static VALUE path2class(VALUE self, VALUE path)
return rb_path_to_class(path);
}
void Init_psych_to_ruby(void)
{
VALUE psych = rb_define_module("Psych");
@@ -33,6 +42,7 @@ void Init_psych_to_ruby(void)
VALUE visitor = rb_define_class_under(visitors, "Visitor", rb_cObject);
cPsychVisitorsToRuby = rb_define_class_under(visitors, "ToRuby", visitor);
rb_define_private_method(cPsychVisitorsToRuby, "build_exception", build_exception, 2);
rb_define_private_method(class_loader, "path2class", path2class, 1);
}