summaryrefslogtreecommitdiff
path: root/ruby_parser.c
diff options
context:
space:
mode:
authorS.H <gamelinks007@gmail.com>2024-01-27 17:11:10 +0900
committerGitHub <noreply@github.com>2024-01-27 08:11:10 +0000
commit9b40f42c22232aaae1b2b17bd6118eacc4c0bee3 (patch)
tree93393a4d7df5aa7d25252ace459543affde045db /ruby_parser.c
parent68b9a32a624edf0cb497d344a2a8650658500517 (diff)
Introduce `NODE_ENCODING`
`__ENCODING__ `was managed by `NODE_LIT` with Encoding object. Introduce `NODE_ENCODING` for 1. `__ENCODING__` is detectable from AST Node. 2. Reduce dependency Ruby object for parse.y
Diffstat (limited to 'ruby_parser.c')
-rw-r--r--ruby_parser.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/ruby_parser.c b/ruby_parser.c
index 965fe2cc1a..3a6f9ed082 100644
--- a/ruby_parser.c
+++ b/ruby_parser.c
@@ -1008,3 +1008,9 @@ rb_node_file_path_val(const NODE *node)
{
return rb_str_new_parser_string(RNODE_FILE(node)->path);
}
+
+VALUE
+rb_node_encoding_val(const NODE *node)
+{
+ return rb_enc_from_encoding(RNODE_ENCODING(node)->enc);
+}