<PackageReference Include="Castle.Core" Version="4.4.0" />

MixinData

public class MixinData
public IEnumerable<Type> MixinInterfaces { get; }

public IEnumerable<object> Mixins { get; }

public MixinData(IEnumerable<object> mixinInstances)

Because we need to cache the types based on the mixed in mixins, we do the following here: - Get all the mixin interfaces - Sort them by full name - Return them by position The idea is to have reproducible behavior for the case that mixins are registered in different orders. This method is here because it is required

public bool ContainsMixin(Type mixinInterfaceType)

public object GetMixinInstance(Type mixinInterfaceType)

public int GetMixinPosition(Type mixinInterfaceType)