public ImmutableArray <IMember> Get(TypeInfo parameter) { var members = _members.Get(parameter); var typed = _typed.Get(parameter); var items = members?.AddRange(typed) ?? typed; var result = items.GroupBy(IdentityFormatter.Default.Get) .Select(x => x.OfType <ParameterizedMember>().FirstOrDefault() ?? x.First()) .ToImmutableArray(); return(result); }
ImmutableArray <IMember> Implementation(TypeInfo parameter) { var members = _members.Get(parameter); var typed = _previous.Get(parameter); var items = members?.AddRange(typed) ?? typed; var result = items.GroupBy(_group) .Select(x => x.OfType <ParameterizedMember>() .FirstOrDefault() ?? x.First()) .ToImmutableArray(); return(result); }