From ef82054bb5e74fcaf3ef6c803246f93b57e88c3d Mon Sep 17 00:00:00 2001 From: Jemma Issroff Date: Wed, 23 Aug 2023 12:37:54 -0700 Subject: [PATCH] [ruby/yarp] Added ModuleNode https://github.com/ruby/yarp/commit/29754d818b --- yarp/yarp.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/yarp/yarp.c b/yarp/yarp.c index 39846d0cb7..6665368d01 100644 --- a/yarp/yarp.c +++ b/yarp/yarp.c @@ -1041,6 +1041,12 @@ yp_scope_node_init(yp_node_t *node, yp_scope_node_t *dest) { const char *end = node->location.end; switch (node->type) { + case YP_NODE_CLASS_NODE: { + yp_class_node_t *class_node = (yp_class_node_t *) node; + statements = (yp_statements_node_t *)class_node->body; + locals = class_node->locals; + break; + } case YP_NODE_DEF_NODE: { yp_def_node_t *def_node = (yp_def_node_t *) node; parameters = def_node->parameters; @@ -1048,14 +1054,12 @@ yp_scope_node_init(yp_node_t *node, yp_scope_node_t *dest) { locals = def_node->locals; break; } - - case YP_NODE_CLASS_NODE: { - yp_class_node_t *class_node = (yp_class_node_t *) node; - statements = (yp_statements_node_t *)class_node->body; - locals = class_node->locals; + case YP_NODE_MODULE_NODE: { + yp_module_node_t *module_node = (yp_module_node_t *) node; + statements = (yp_statements_node_t *)module_node->body; + locals = module_node->locals; break; } - case YP_NODE_SINGLETON_CLASS_NODE: { yp_singleton_class_node_t *singleton_class_node = (yp_singleton_class_node_t *) node; statements = (yp_statements_node_t *)singleton_class_node->body;