The Mixins will be evaluated from left-to-right as they are declared within the @Mixins annotation, and the each super interface will be scanned likewise. It is also possible to declare Mixins on Mixin implementation classes, typically to declare private Mixins needed by a Mixin. The @Mixins declared on Mixin implementations will be evaluated after the @Mixin declarations in the interfaces.
Precedence means that the first Mixin implementation found to satisfy a MixinType method will be used. Interfaces are searched before classes and Mixins implementing the MixinType will be selected before GenericMixins.
public interface MyStuff
{
void doStuff();
}
public interface OtherStuff
{
Property<String> stuff();
}
public class MyStuffMixin
implements MyStuff
{
public void doStuff()
{
// impl code goes here.
}
}