Add nd_type_p macro

This commit is contained in:
S.H 2021-12-04 00:01:24 +09:00 committed by GitHub
parent 28fb6d6b9e
commit ec7f14d9fa
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
Notes: git 2021-12-04 00:01:53 +09:00
Merged: https://github.com/ruby/ruby/pull/5091

Merged-By: nobu <nobu@ruby-lang.org>
5 changed files with 102 additions and 101 deletions

6
node.c
View file

@ -136,7 +136,7 @@ dump_array(VALUE buf, VALUE indent, int comment, const NODE *node)
const char *next_indent = default_indent;
F_LONG(nd_alen, "length");
F_NODE(nd_head, "element");
while (node->nd_next && nd_type(node->nd_next) == NODE_LIST) {
while (node->nd_next && nd_type_p(node->nd_next, NODE_LIST)) {
node = node->nd_next;
F_NODE(nd_head, "element");
}
@ -175,7 +175,7 @@ dump_node(VALUE buf, VALUE indent, int comment, const NODE * node)
dump_node(buf, indent, comment, node->nd_head);
D_DEDENT;
} while (node->nd_next &&
nd_type(node->nd_next) == NODE_BLOCK &&
nd_type_p(node->nd_next, NODE_BLOCK) &&
(node = node->nd_next, 1));
if (node->nd_next) {
LAST_NODE;
@ -370,7 +370,7 @@ dump_node(VALUE buf, VALUE indent, int comment, const NODE * node)
andor:
while (1) {
F_NODE(nd_1st, "left expr");
if (!node->nd_2nd || nd_type(node->nd_2nd) != (int)type)
if (!node->nd_2nd || !nd_type_p(node->nd_2nd, type))
break;
node = node->nd_2nd;
}