Skip to content

Commit 5e590f4

Browse files
committed
trivial: switch symbol build to use flags vs chain of ifs
1 parent c9464cf commit 5e590f4

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

src/main/java/org/jruby/prism/builder/IRBuilderPrism.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2796,11 +2796,12 @@ protected Operand putConstant(ConstantPathNode path, CodeBlock valueBuilder) {
27962796
}
27972797

27982798
protected RubySymbol symbol(SymbolNode node) {
2799-
short flags = node.flags;
2800-
Encoding encoding = SymbolFlags.isForcedUsAsciiEncoding(flags) ? USASCIIEncoding.INSTANCE :
2801-
SymbolFlags.isForcedUtf8Encoding(flags) ? UTF8Encoding.INSTANCE :
2802-
SymbolFlags.isForcedBinaryEncoding(flags) ? ASCIIEncoding.INSTANCE :
2803-
getEncoding();
2799+
var encoding = switch(node.flags) {
2800+
case SymbolFlags.FORCED_BINARY_ENCODING -> ASCIIEncoding.INSTANCE;
2801+
case SymbolFlags.FORCED_US_ASCII_ENCODING -> USASCIIEncoding.INSTANCE;
2802+
case SymbolFlags.FORCED_UTF8_ENCODING -> UTF8Encoding.INSTANCE;
2803+
default -> getEncoding();
2804+
};
28042805
ByteList bytelist = new ByteList(node.unescaped, encoding);
28052806

28062807
// FIXME: This should be done by prism.

0 commit comments

Comments
 (0)