Package net.minecraftforge.fml
Interface DistExecutor.SafeReferent
- All Known Subinterfaces:
DistExecutor.SafeCallable<T>
,DistExecutor.SafeRunnable
,DistExecutor.SafeSupplier<T>
- Enclosing class:
- DistExecutor
public static interface DistExecutor.SafeReferent
A safe referent. This will assert that it is being called via a separated class method reference. This will
avoid the common pitfalls of
DistExecutor.callWhenOn(Dist, Supplier)
above.
SafeReferents assert that they are defined as a separate method outside the scope of the calling class.
Implementations need to be defined in a separate class to the referring site, with appropriate
visibility to be accessible at the callsite (generally, avoid private methods).
Valid:
DistExecutor.safeCallWhenOn(Dist.CLIENT, ()->AnotherClass::clientOnlyMethod);
Invalid:
DistExecutor.safeCallWhenOn(Dist.CLIENT, ()->()->Minecraft.getInstance().world);