From fcbf63e62c627deae76c1b8cb8c0876c536ed811 Mon Sep 17 00:00:00 2001 From: Jari Vetoniemi Date: Mon, 16 Mar 2020 18:49:26 +0900 Subject: Fresh start --- jni/ruby/ext/psych/psych_yaml_tree.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 jni/ruby/ext/psych/psych_yaml_tree.c (limited to 'jni/ruby/ext/psych/psych_yaml_tree.c') diff --git a/jni/ruby/ext/psych/psych_yaml_tree.c b/jni/ruby/ext/psych/psych_yaml_tree.c new file mode 100644 index 0000000..bcf24d2 --- /dev/null +++ b/jni/ruby/ext/psych/psych_yaml_tree.c @@ -0,0 +1,24 @@ +#include + +VALUE cPsychVisitorsYamlTree; + +/* + * call-seq: private_iv_get(target, prop) + * + * Get the private instance variable +prop+ from +target+ + */ +static VALUE private_iv_get(VALUE self, VALUE target, VALUE prop) +{ + return rb_attr_get(target, rb_intern(StringValuePtr(prop))); +} + +void Init_psych_yaml_tree(void) +{ + VALUE psych = rb_define_module("Psych"); + VALUE visitors = rb_define_module_under(psych, "Visitors"); + VALUE visitor = rb_define_class_under(visitors, "Visitor", rb_cObject); + cPsychVisitorsYamlTree = rb_define_class_under(visitors, "YAMLTree", visitor); + + rb_define_private_method(cPsychVisitorsYamlTree, "private_iv_get", private_iv_get, 2); +} +/* vim: set noet sws=4 sw=4: */ -- cgit v1.2.3