Ruby 2.7.6p219 (2022-04-12 revision c9c2245c0a25176072e02db9254f0e0c84c805cd)
psych_yaml_tree.c
Go to the documentation of this file.
1#include <psych.h>
2
4
5/*
6 * call-seq: private_iv_get(target, prop)
7 *
8 * Get the private instance variable +prop+ from +target+
9 */
10static VALUE private_iv_get(VALUE self, VALUE target, VALUE prop)
11{
12 return rb_attr_get(target, rb_intern(StringValueCStr(prop)));
13}
14
16{
17 VALUE psych = rb_define_module("Psych");
18 VALUE visitors = rb_define_module_under(psych, "Visitors");
19 VALUE visitor = rb_define_class_under(visitors, "Visitor", rb_cObject);
20 cPsychVisitorsYamlTree = rb_define_class_under(visitors, "YAMLTree", visitor);
21
22 rb_define_private_method(cPsychVisitorsYamlTree, "private_iv_get", private_iv_get, 2);
23}
24/* vim: set noet sws=4 sw=4: */
VALUE rb_define_class_under(VALUE, const char *, VALUE)
Defines a class under the namespace of outer.
Definition: class.c:711
VALUE rb_define_module(const char *)
Definition: class.c:785
VALUE rb_define_module_under(VALUE, const char *)
Definition: class.c:810
VALUE rb_cObject
Object class.
Definition: ruby.h:2012
VALUE cPsychVisitorsYamlTree
void Init_psych_yaml_tree(void)
void rb_define_private_method(VALUE, const char *, VALUE(*)(), int)
unsigned long VALUE
#define rb_intern(str)
VALUE rb_attr_get(VALUE, ID)
Definition: variable.c:1084
#define StringValueCStr(v)