public void Verify(AssemblyGroup asmGroup, string typeName = null) { foreach (var type in asmGroup.Types) { if (typeName != null && typeName != type.FullName) continue; var extendedInterfaces = type.Interfaces.Where(ifs => ifs.FullName.StartsWith("Akka.Interfaced.IExtendedInterface")).ToList(); if (extendedInterfaces.Any()) { VerifiedTypes.Add(type.FullName); var interfaceTypes = new List<TypeDefinition>(); foreach (var ifs in extendedInterfaces) { foreach (var arg in ((GenericInstanceType)ifs).GenericArguments) { var typeDef = asmGroup.GetType(arg); if (typeDef != null) interfaceTypes.Add(typeDef); else Errors.Add($"Cannot get type {arg.FullName} for {type.FullName}"); } } VerifyInterface(type, interfaceTypes.ToArray()); } } }
public void Verify(AssemblyGroup asmGroup, string typeName = null) { foreach (var type in asmGroup.Types) { if (typeName != null && typeName != type.FullName) { continue; } var extendedInterfaces = type.Interfaces.Where(ifs => ifs.FullName.StartsWith("Akka.Interfaced.IExtendedInterface")).ToList(); if (extendedInterfaces.Any()) { VerifiedTypes.Add(type.FullName); var interfaceTypes = new List <TypeDefinition>(); foreach (var ifs in extendedInterfaces) { foreach (var arg in ((GenericInstanceType)ifs).GenericArguments) { var typeDef = asmGroup.GetType(arg); if (typeDef != null) { interfaceTypes.Add(typeDef); } else { Errors.Add($"Cannot get type {arg.FullName} for {type.FullName}"); } } } VerifyInterface(type, interfaceTypes.ToArray()); } } }