From b088958c9f6935d356b6c087c8e8106b400aa24f Mon Sep 17 00:00:00 2001 From: Raven Szewczyk Date: Sat, 1 Apr 2023 20:06:12 +0100 Subject: Jabel, Generic injection and mostly automatic code cleanup (#1829) * Enable Jabel&Generic injection, fix type error caused by this * add missing <> * Infer generic types automatically * Parametrize cast types * Use enhanced for loops * Unnecessary boxing * Unnecessary unboxing * Use Objects.equals * Explicit type can be replaced with `<>` * Collapse identical catch blocks * Add SafeVarargs where applicable * Anonymous type can be replaced with lambda * Use List.sort directly * Lambda can be a method reference * Statement lambda can be an expression lambda * Use string switches * Instanceof pattern matching * Text block can be used * Migrate to enhanced switch * Java style array declarations * Unnecessary toString() * More unnecessary String conversions * Unnecessary modifiers * Unnecessary semicolons * Fix duplicate conditions * Extract common code from if branches * Replace switches with ifs for 1-2 cases * Inner class may be static * Minor performance issues * Replace string appending in loops with string builders * Fix IntelliJ using the wrong empty list method * Use Long.compare * Generic arguments: getSubItems * Generic arguments: getSubBlocks * Raw types warnings * Fix remaining missing generics * Too weak variable type leads to unnecessary cast * Redundant type casts * Redundant array length check * Redundant vararg arrays * Manual min/max implementations * A couple missed inspections * Goodbye explosion power ternary ladder * Apply spotless * Get rid of the other two big ternary ladders * Binary search explosion power * Don't overcomplicate things --- .../java/gregtech/api/interfaces/tileentity/IEnergyConnected.java | 6 ++---- .../api/interfaces/tileentity/IExperimentalEnergyTileEntity.java | 4 ++-- 2 files changed, 4 insertions(+), 6 deletions(-) (limited to 'src/main/java/gregtech/api/interfaces/tileentity') diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java b/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java index 37a7d2fc5c..1affdb0d74 100644 --- a/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java +++ b/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java @@ -60,11 +60,10 @@ public interface IEnergyConnected extends IColoredTileEntity { */ public static long emitEnergyToNetwork(long aVoltage, long aAmperage, IEnergyConnected aEmitter) { long rUsedAmperes = 0; - if (!(aEmitter instanceof IHasWorldObjectAndCoords)) { + if (!(aEmitter instanceof IHasWorldObjectAndCoords emitterTile)) { return 0; } - IHasWorldObjectAndCoords emitterTile = (IHasWorldObjectAndCoords) aEmitter; for (byte i = 0, j = 0; i < 6 && aAmperage > rUsedAmperes; i++) { if (!aEmitter.outputsEnergyTo(i)) { continue; @@ -72,8 +71,7 @@ public interface IEnergyConnected extends IColoredTileEntity { j = GT_Utility.getOppositeSide(i); final TileEntity tTileEntity = emitterTile.getTileEntityAtSide(i); - if (tTileEntity instanceof PowerLogicHost) { - PowerLogicHost host = (PowerLogicHost) tTileEntity; + if (tTileEntity instanceof PowerLogicHost host) { PowerLogic logic = host.getPowerLogic(j); if (logic == null || logic.isEnergyReceiver()) { diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java b/src/main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java index 119a1af207..1f0c7f4b1c 100644 --- a/src/main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java +++ b/src/main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java @@ -51,14 +51,14 @@ public interface IExperimentalEnergyTileEntity extends IColoredTileEntity, IHasW private static void checkAvailabilities() { if (CHECK_ALL) { try { - Class tClass = cofh.api.energy.IEnergyReceiver.class; + Class tClass = cofh.api.energy.IEnergyReceiver.class; tClass.getCanonicalName(); RF_ENERGY = true; } catch (Throwable e) { /**/ } try { - Class tClass = ic2.api.energy.tile.IEnergySink.class; + Class tClass = ic2.api.energy.tile.IEnergySink.class; tClass.getCanonicalName(); IC_ENERGY = true; } catch (Throwable e) { -- cgit