From 7a050638b19cf6996c498e0c5909c293008cc58a Mon Sep 17 00:00:00 2001 From: yui-knk Date: Fri, 29 Dec 2023 22:34:35 +0900 Subject: Introduce NODE_FILE `__FILE__` was managed by `NODE_STR` with `String` object. This commit introduces `NODE_FILE` and `struct rb_parser_string` so that 1. `__FILE__` is detectable from AST Node 2. Reduce dependency ruby object --- ast.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'ast.c') diff --git a/ast.c b/ast.c index 33b2f61aa2..6c3b2bf04c 100644 --- a/ast.c +++ b/ast.c @@ -694,6 +694,8 @@ node_children(rb_ast_t *ast, const NODE *node) } case NODE_LINE: return rb_ary_new_from_args(1, rb_node_line_lineno_val(node)); + case NODE_FILE: + return rb_ary_new_from_args(1, rb_node_file_path_val(node)); case NODE_ERROR: return rb_ary_new_from_node_args(ast, 0); case NODE_ARGS_AUX: -- cgit v1.2.3