diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2013-05-14 10:29:38 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2013-05-14 10:29:38 -0700 |
commit | 2c644e184192975b261a81f486a04defa3172b3f (patch) | |
tree | 3c35afccee80217213b6a94298b82dd02683b741 /ext/psych | |
parent | d73609e72b3f224f1c99f17ee624240f970af9fd (diff) | |
download | psych-2c644e184192975b261a81f486a04defa3172b3f.tar.gz |
* ext/psych/lib/psych.rb: Adding Psych.safe_load for loading a user
defined, restricted subset of Ruby object types.
* ext/psych/lib/psych/class_loader.rb: A class loader for
encapsulating the logic for which objects are allowed to be
deserialized.
* ext/psych/lib/psych/deprecated.rb: Changes to use the class loader
* ext/psych/lib/psych/exception.rb: ditto
* ext/psych/lib/psych/json/stream.rb: ditto
* ext/psych/lib/psych/nodes/node.rb: ditto
* ext/psych/lib/psych/scalar_scanner.rb: ditto
* ext/psych/lib/psych/stream.rb: ditto
* ext/psych/lib/psych/streaming.rb: ditto
* ext/psych/lib/psych/visitors/json_tree.rb: ditto
* ext/psych/lib/psych/visitors/to_ruby.rb: ditto
* ext/psych/lib/psych/visitors/yaml_tree.rb: ditto
* ext/psych/psych_to_ruby.c: ditto
* test/psych/helper.rb: ditto
* test/psych/test_safe_load.rb: tests for restricted subset.
* test/psych/test_scalar_scanner.rb: ditto
* test/psych/visitors/test_to_ruby.rb: ditto
* test/psych/visitors/test_yaml_tree.rb: ditto
Diffstat (limited to 'ext/psych')
-rw-r--r-- | ext/psych/psych_to_ruby.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ext/psych/psych_to_ruby.c b/ext/psych/psych_to_ruby.c index ed5245e..3cc87a9 100644 --- a/ext/psych/psych_to_ruby.c +++ b/ext/psych/psych_to_ruby.c @@ -31,11 +31,13 @@ static VALUE path2class(VALUE self, VALUE path) void Init_psych_to_ruby(void) { VALUE psych = rb_define_module("Psych"); + VALUE class_loader = rb_define_class_under(psych, "ClassLoader", rb_cObject); + VALUE visitors = rb_define_module_under(psych, "Visitors"); 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(cPsychVisitorsToRuby, "path2class", path2class, 1); + rb_define_private_method(class_loader, "path2class", path2class, 1); } /* vim: set noet sws=4 sw=4: */ |