Cache enum .values() (#457)

This commit is contained in:
boubou19 authored and GitHub committed 2026-08-10 15:01:37 +07:00
1 parent 049156e63e
commit 23d2142084
6 files changed
+13 -8

No files matched your search

@@ -215,7 +215,7 @@ public class UltraTerminalButtons implements ICustomButtonDataObject {
public void readData(NBTTagCompound tag) {
this.reStock = tag.getBoolean(restockItems);
this.magnetMode = WirelessMagnet.Mode.values()[tag.getInteger(modeKey)];
this.terminalMode = UltraTerminalModes.values()[tag.getInteger(MODE)];
this.terminalMode = UltraTerminalModes.VALUES[tag.getInteger(MODE)];
}
@Override
@@ -229,7 +229,7 @@ public class UltraTerminalButtons implements ICustomButtonDataObject {
public void readByte(ByteBuf buf) {
this.reStock = buf.readBoolean();
this.magnetMode = WirelessMagnet.Mode.values()[buf.readInt()];
this.terminalMode = UltraTerminalModes.values()[buf.readInt()];
this.terminalMode = UltraTerminalModes.VALUES[buf.readInt()];
ItemWirelessUltraTerminal.setMode(this.terminal, this.terminalMode);
toggleMagnetButtonsVisibility();
@@ -103,7 +103,7 @@ public class ItemBaseWirelessTerminal extends ToolWirelessTerminal implements II
Item item = is.getItem();
if (item instanceof ItemWirelessUltraTerminal) {
if (!is.hasTagCompound()) is.setTagCompound(new NBTTagCompound());
return UltraTerminalModes.values()[is.getTagCompound().getInteger(MODE)];
return UltraTerminalModes.VALUES[is.getTagCompound().getInteger(MODE)];
} else if (item instanceof ItemWirelessPatternTerminal) {
return UltraTerminalModes.PATTERN;
} else if (item instanceof ItemWirelessInterfaceTerminal) {
@@ -194,7 +194,7 @@ public class ItemWirelessUltraTerminal extends ItemBaseWirelessTerminal
public IGuiItemObject getGuiObject(ItemStack is, World world, EntityPlayer p, int x, int y, int z) {
final IWirelessTermHandler wh = AEApi.instance().registries().wireless().getWirelessTerminalHandler(is);
if (wh == null) return null;
return switch (y != Integer.MIN_VALUE ? UltraTerminalModes.values()[y] : getMode(is)) {
return switch (y != Integer.MIN_VALUE ? UltraTerminalModes.VALUES[y] : getMode(is)) {
case CRAFTING -> new WirelessCraftingTerminalGuiObject(wh, is, p, world, x, y, z);
case PATTERN, PATTERN_EX -> new WirelessPatternTerminalGuiObject(wh, is, p, world, x, y, z);
case INTERFACE -> new WirelessInterfaceTerminalGuiObject(wh, is, x);
@@ -29,7 +29,9 @@ public class WirelessMagnet {
Off,
Inv,
ME
ME;
public static final Mode[] VALUES = values();
}
public enum ListMode {
@@ -138,7 +140,7 @@ public class WirelessMagnet {
if (is != null && is.getItem() instanceof ItemWirelessUltraTerminal) {
NBTTagCompound data = Platform.openNbtData(is);
if (data.hasKey(modeKey)) {
return Mode.values()[data.getInteger(modeKey)];
return Mode.VALUES[data.getInteger(modeKey)];
}
setMode(is, Mode.Off);
}
@@ -54,7 +54,7 @@ public class CPacketSwitchGuis implements IMessage {
@Override
public void fromBytes(ByteBuf byteBuf) {
final int ord = byteBuf.readInt();
mode = ord != -1 ? UltraTerminalModes.values()[ord] : null;
mode = ord != -1 ? UltraTerminalModes.VALUES[ord] : null;
switchTerminal = byteBuf.readBoolean();
}
@@ -1,9 +1,12 @@
package com.glodblock.github.util;
public enum UltraTerminalModes {
CRAFTING,
PATTERN,
PATTERN_EX,
INTERFACE,
LEVEL
LEVEL;
public static final UltraTerminalModes[] VALUES = values();
}