protected ExplicitlyImplementedMembersCollection GetExplicitlyImplementedInterfaceMethods(TypeDefinition type, ILanguage language) { ExplicitlyImplementedMembersCollection result = new ExplicitlyImplementedMembersCollection(); IEnumerable <IMemberDefinition> members = type.GetMembersUnordered(true); foreach (IMemberDefinition member in members) { if (member is MethodDefinition) { MethodDefinition method = member as MethodDefinition; ICollection <ImplementedMember> explicitlyImplementedMethods = method.GetExplicitlyImplementedMethods(); AddExplicitlyImplementedMembers(explicitlyImplementedMethods, result); } if (member is PropertyDefinition) { PropertyDefinition property = member as PropertyDefinition; ICollection <ImplementedMember> explicitlyImplementedProperties = property.GetExplicitlyImplementedProperties(); AddExplicitlyImplementedMembers(explicitlyImplementedProperties, result); } if (member is EventDefinition) { EventDefinition @event = member as EventDefinition; ICollection <ImplementedMember> explicitlyImplementedEvents = @event.GetExplicitlyImplementedEvents(); AddExplicitlyImplementedMembers(explicitlyImplementedEvents, result); } } return(result); }