Convert a series of else if
lines to a switch
This commit is contained in:
parent
149373ce7f
commit
38bc107f0b
25
parse.y
25
parse.y
@ -174,28 +174,23 @@ node_cdhash_cmp(VALUE val, VALUE lit)
|
|||||||
if (type_val != type_lit) {
|
if (type_val != type_lit) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
else if (type_lit == NODE_INTEGER) {
|
|
||||||
|
switch (type_lit) {
|
||||||
|
case NODE_INTEGER:
|
||||||
return node_integer_cmp(RNODE_INTEGER(node_val), RNODE_INTEGER(node_lit));
|
return node_integer_cmp(RNODE_INTEGER(node_val), RNODE_INTEGER(node_lit));
|
||||||
}
|
case NODE_FLOAT:
|
||||||
else if (type_lit == NODE_FLOAT) {
|
|
||||||
return node_float_cmp(RNODE_FLOAT(node_val), RNODE_FLOAT(node_lit));
|
return node_float_cmp(RNODE_FLOAT(node_val), RNODE_FLOAT(node_lit));
|
||||||
}
|
case NODE_RATIONAL:
|
||||||
else if (type_lit == NODE_RATIONAL) {
|
|
||||||
return node_rational_cmp(RNODE_RATIONAL(node_val), RNODE_RATIONAL(node_lit));
|
return node_rational_cmp(RNODE_RATIONAL(node_val), RNODE_RATIONAL(node_lit));
|
||||||
}
|
case NODE_IMAGINARY:
|
||||||
else if (type_lit == NODE_IMAGINARY) {
|
|
||||||
return node_imaginary_cmp(RNODE_IMAGINARY(node_val), RNODE_IMAGINARY(node_lit));
|
return node_imaginary_cmp(RNODE_IMAGINARY(node_val), RNODE_IMAGINARY(node_lit));
|
||||||
}
|
case NODE_SYM:
|
||||||
else if (type_lit == NODE_SYM) {
|
|
||||||
return rb_parser_string_hash_cmp(RNODE_SYM(node_val)->string, RNODE_SYM(node_lit)->string);
|
return rb_parser_string_hash_cmp(RNODE_SYM(node_val)->string, RNODE_SYM(node_lit)->string);
|
||||||
}
|
case NODE_LINE:
|
||||||
else if (type_lit == NODE_LINE) {
|
|
||||||
return node_val->nd_loc.beg_pos.lineno != node_lit->nd_loc.beg_pos.lineno;
|
return node_val->nd_loc.beg_pos.lineno != node_lit->nd_loc.beg_pos.lineno;
|
||||||
}
|
case NODE_FILE:
|
||||||
else if (type_lit == NODE_FILE) {
|
|
||||||
return rb_parser_string_hash_cmp(RNODE_FILE(node_val)->path, RNODE_FILE(node_lit)->path);
|
return rb_parser_string_hash_cmp(RNODE_FILE(node_val)->path, RNODE_FILE(node_lit)->path);
|
||||||
}
|
default:
|
||||||
else {
|
|
||||||
rb_bug("unexpected node: %s, %s", ruby_node_name(type_val), ruby_node_name(type_lit));
|
rb_bug("unexpected node: %s, %s", ruby_node_name(type_val), ruby_node_name(type_lit));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user