Skip to content

A possible opportunity for optimization in ImmutableArrayExtensions.GetTypesFromMemberMap #67991

@AlekseyTs

Description

@AlekseyTs

bool hasType = false;
bool hasNamespace = false;
foreach (var symbol in members)
{
if (symbol is TNamedTypeSymbol)
{
hasType = true;
if (hasNamespace)
{
break;
}
}
else
{
#if DEBUG
Debug.Assert(symbol is TNamespaceSymbol);
#endif
hasNamespace = true;
if (hasType)
{
break;
}
}
}

It looks like members.As<TNamedTypeSymbol>() can be used to quickly detect a situation when hasType is true && hasNamespace is false

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions