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 --- src/main/java/gregtech/api/util/GT_BaseCrop.java | 35 +++++++++++------------- 1 file changed, 16 insertions(+), 19 deletions(-) (limited to 'src/main/java/gregtech/api/util/GT_BaseCrop.java') diff --git a/src/main/java/gregtech/api/util/GT_BaseCrop.java b/src/main/java/gregtech/api/util/GT_BaseCrop.java index e66866cd8f..a586ad672e 100644 --- a/src/main/java/gregtech/api/util/GT_BaseCrop.java +++ b/src/main/java/gregtech/api/util/GT_BaseCrop.java @@ -3,6 +3,7 @@ package gregtech.api.util; import static gregtech.api.enums.GT_Values.E; import static gregtech.api.enums.ModIDs.IC2CropPlugin; +import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; import java.util.List; @@ -27,11 +28,18 @@ import ic2.api.crops.ICropTile; public class GT_BaseCrop extends CropCard implements ICropCardInfo { - public static ArrayList sCropList = new ArrayList(); - private String mName = E, mDiscoveredBy = "Gregorius Techneticies", mAttributes[]; - private int mTier = 0, mMaxSize = 0, mAfterHarvestSize = 0, mHarvestSize = 0, mStats[] = new int[5], - mGrowthSpeed = 0; - private ItemStack mDrop = null, mSpecialDrops[] = null; + public static ArrayList sCropList = new ArrayList<>(); + private String mName = E; + private String mDiscoveredBy = "Gregorius Techneticies"; + private String[] mAttributes; + private int mTier = 0; + private int mMaxSize = 0; + private int mAfterHarvestSize = 0; + private int mHarvestSize = 0; + private int[] mStats = new int[5]; + private int mGrowthSpeed = 0; + private ItemStack mDrop = null; + private ItemStack[] mSpecialDrops = null; private Materials mBlock = null; private static boolean bIc2NeiLoaded = IC2CropPlugin.isModLoaded(); @@ -123,19 +131,8 @@ public class GT_BaseCrop extends CropCard implements ICropCardInfo { Class.forName("speiger.src.crops.api.CropPluginAPI") .getField("instance"), this); - } catch (IllegalAccessException ex) { - bIc2NeiLoaded = false; - } catch (IllegalArgumentException ex) { - bIc2NeiLoaded = false; - } catch (java.lang.reflect.InvocationTargetException ex) { - bIc2NeiLoaded = false; - } catch (NoSuchFieldException ex) { - bIc2NeiLoaded = false; - } catch (NoSuchMethodException ex) { - bIc2NeiLoaded = false; - } catch (SecurityException ex) { - bIc2NeiLoaded = false; - } catch (ClassNotFoundException ex) { + } catch (IllegalAccessException | ClassNotFoundException | SecurityException | NoSuchMethodException + | NoSuchFieldException | InvocationTargetException | IllegalArgumentException ex) { bIc2NeiLoaded = false; } } @@ -294,7 +291,7 @@ public class GT_BaseCrop extends CropCard implements ICropCardInfo { @Override public List getCropInformation() { if (mBlock != null) { - ArrayList result = new ArrayList(1); + ArrayList result = new ArrayList<>(1); result.add( String.format( "Requires %s Ore or Block of %s as soil block to reach full growth.", -- cgit