Description
A library / modlauncher service that exposes the jvm INVOKEDYNAMIC opcode to modders. For more information on how to use it as a modder, see the GitHub.
Some more explanation on this:
The Java Virtual Machine (JVM) has an opcode called INVOKEDYNAMIC. Each individual occurrence of that opcode in bytecode is permanently bound to a CallSite object when executed the first time. This CallSite is obtained by calling a bootstrap method, which is implemented in plain java. This is for example used to implement lambdas in bytecode.
Dye provides a transform service to replace regular method calls to methods annotated with a special annotation with INVOKEDYNAMIC opcodes to a custom bootstrap method given by the annotation value.
This is a library mod and that obviously means, it does not affect the users experience in any way.