Annotation Interface Preprocessor


@Documented @Retention(RUNTIME) @Target(TYPE) public @interface Preprocessor
Marks the class as a preprocessor.

Classes annotated with this annotation must implement the IPreprocessor interface. Refer to it for more information related to the various methods that should be implemented.

Classes annotated with this annotation must also be annotated with ZenRegister to allow for automatic discovery and have either a public no-argument constructor or a public static final field named INSTANCE. The field or the constructor, depending on the availability, will then be used by CraftTweaker to automatically create and register the preprocessor. If both a public no-argument constructor and an instance field is provided, then the one chosen is left to the implementation.

It is not necessary for a mod to manually register the preprocessor through a plugin's IJavaNativeIntegrationRegistrationHandler: the presence of the annotation along with ZenRegister is enough for CraftTweaker to automatically discover the class and manage its lifecycle.

Since:
9.1.0