From af2c043babe220350bc08275f1dab58534a5cfaa Mon Sep 17 00:00:00 2001 From: TudbuT Date: Sat, 29 Jun 2024 00:04:54 +0200 Subject: [PATCH] fix some code smells --- src/main/java/de/tudbut/darkreflection/DarkField.java | 2 -- src/main/java/de/tudbut/darkreflection/Strategy.java | 9 +-------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/src/main/java/de/tudbut/darkreflection/DarkField.java b/src/main/java/de/tudbut/darkreflection/DarkField.java index 603fdb9..e05a478 100644 --- a/src/main/java/de/tudbut/darkreflection/DarkField.java +++ b/src/main/java/de/tudbut/darkreflection/DarkField.java @@ -18,8 +18,6 @@ public class DarkField { public static Field nameToField(Class owner, String name) { try { // try the basic strategy first - it works often enough for this to be a speed advantage. - // this also prevents a StackOverflowError if we're using a ReflectionDataClass with a - // BasicOffsetGetter (like on some non-openjdk jvms) return owner.getDeclaredField(name); } catch (NoSuchFieldException e) { return Arrays.stream(Strategy.classStrategy.instance(owner).getDeclaredFields()).filter(x -> x.getName().equals(name)).findAny().orElse(null); diff --git a/src/main/java/de/tudbut/darkreflection/Strategy.java b/src/main/java/de/tudbut/darkreflection/Strategy.java index b038d33..65fff8a 100644 --- a/src/main/java/de/tudbut/darkreflection/Strategy.java +++ b/src/main/java/de/tudbut/darkreflection/Strategy.java @@ -14,7 +14,6 @@ import static de.tudbut.darkreflection.UnsafeProvider.offsetGetter; // which strategy depends on which? -// FReflectionDataClass -> reflectionFieldStrategy // FieldByName -> reflectedFieldStrategy // FieldByName -> classStrategy @@ -116,13 +115,7 @@ public class Strategy { return null; } }), - DarkReflection((owner, field, isStatic, type) -> { - try { - return reflectedFieldStrategy.instance(Arrays.stream(classStrategy.instance(owner).getDeclaredFields()).filter(x -> x.getName().equals(field)).findAny().orElseThrow(() -> new NoSuchFieldException(field))); - } catch (NoSuchFieldException e) { - return null; - } - }), + DarkReflection((owner, field, isStatic, type) -> reflectedFieldStrategy.instance(Arrays.stream(classStrategy.instance(owner).getDeclaredFields()).filter(x -> x.getName().equals(field)).findAny().orElse(null))), Unsafe((owner, field, isStatic, type) -> new UnsafeField<>( isStatic ? offsetGetter.staticFieldBase(owner, field) : null, isStatic ? offsetGetter.staticFieldOffset(owner, field) : offsetGetter.objectFieldOffset(owner, field), type)),