Skip to content

Commit 919e5c4

Browse files
committed
Fix annotation checker
1 parent f6322f7 commit 919e5c4

1 file changed

Lines changed: 9 additions & 11 deletions

File tree

src/main/java/com/cake/azimuth/registration/CreateBlockEdits.java

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,15 @@
44
import com.tterrag.registrate.builders.BlockBuilder;
55
import net.neoforged.fml.ModList;
66
import net.neoforged.neoforgespi.language.ModFileScanData;
7+
import org.jetbrains.annotations.NotNull;
78

89
import java.lang.annotation.ElementType;
910
import java.lang.annotation.Retention;
1011
import java.lang.annotation.RetentionPolicy;
1112
import java.lang.annotation.Target;
1213
import java.lang.reflect.Method;
1314
import java.lang.reflect.Modifier;
14-
import java.util.Arrays;
15-
import java.util.Comparator;
16-
import java.util.LinkedHashMap;
17-
import java.util.List;
18-
import java.util.Map;
19-
import java.util.Objects;
15+
import java.util.*;
2016
import java.util.function.Consumer;
2117

2218
/**
@@ -94,22 +90,24 @@ private static Method resolveRegistratorMethod(final ModFileScanData.AnnotationD
9490
}
9591

9692
final List<Method> registrators = Arrays.stream(owner.getDeclaredMethods())
97-
.filter(method -> method.getName().equals(annotationData.memberName()))
93+
.filter(method -> annotationData.memberName().startsWith(method.getName())) //Compare ignoring the ()V for params
9894
.filter(method -> method.isAnnotationPresent(Registrator.class))
9995
.toList();
10096
if (registrators.size() != 1) {
10197
throw new IllegalStateException("Expected exactly one annotated @CreateBlockEdits.Registrator method for " + describe(annotationData) + ", but found " + registrators.size() + ".");
10298
}
10399

104-
final Method registratorMethod = registrators.get(0);
100+
return resolveRegistratorMethodFromRegistrators(registrators);
101+
}
102+
103+
private static @NotNull Method resolveRegistratorMethodFromRegistrators(final List<Method> registrators) {
104+
final Method registratorMethod = registrators.getFirst();
105105
if (!Modifier.isPublic(registratorMethod.getModifiers())
106106
|| !Modifier.isStatic(registratorMethod.getModifiers())
107107
|| registratorMethod.getParameterCount() != 0
108-
|| registratorMethod.getReturnType() != Void.TYPE
109-
|| !registratorMethod.getName().equals("register")) {
108+
|| registratorMethod.getReturnType() != Void.TYPE) {
110109
throw new IllegalStateException("Invalid @CreateBlockEdits.Registrator method " + registratorMethod.toGenericString() + "; expected public static void register() with no arguments.");
111110
}
112-
113111
return registratorMethod;
114112
}
115113

0 commit comments

Comments
 (0)