This interface can be implemented by environments to enforce a method
whitelist.
When drivers are collected for a block, they are combined into a compound
driver. This compound driver will in turn generate a compound environment
that wraps the contributing environments. Which in turn results in the
block's component containing the list of methods from all drivers that apply
to the block.
In some scenarios you may not want this to happen. Instead, only a select
list of methods should be shown for a block - for example, you may want to
suppress inventory functionality if your TileEntity implements IInventory.
To do so, implement this interface in the
environment that you
return from your driver's
DriverBlock.createEnvironment(net.minecraft.world.World, BlockPos, net.minecraft.util.Direction)
method, and provide the names of the allowed methods from
whitelistedMethods()
.
Important: if multiple drivers apply to a single block that each
provide a whitelist, the list of allowed methods is the intersection of the
different whitelists!