void IImplementedMessageTypeCache <TMessage> .EnumerateImplementedTypes(IImplementedMessageType implementedMessageType, bool includeActualType) { for (var i = 0; i < _implementedTypes.Length; i++) { if (_implementedTypes[i].MessageType == typeof(TMessage) && !includeActualType) { continue; } _implementedTypes[i].ImplementsType(implementedMessageType); } }
/// <summary> /// Enumerate the implemented message types /// </summary> /// <param name="implementedMessageType">The interface reference to invoke for each type</param> /// <param name="includeActualType">Include the actual message type first, before any implemented types</param> public static void EnumerateImplementedTypes(IImplementedMessageType implementedMessageType, bool includeActualType = false) { Cached.Instance.Value.EnumerateImplementedTypes(implementedMessageType, includeActualType); }
void CachedType.ImplementsType(IImplementedMessageType implementedMessageType) { implementedMessageType.ImplementsMessageType <TAdapter>(Direct); }