in src/consumers/merge_scopes.hack [15:36]
function merge_scopes(
?HHAST\Node $ast,
ScannedDefinition::TContext $context,
vec<ScannedScope> $scopes,
): ScannedScope {
return new ScannedScope(
$ast,
$context,
Vec\map($scopes, $s ==> $s->getClasses()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getInterfaces()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getTraits()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getFunctions()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getMethods()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getUsedTraits()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getProperties()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getConstants()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getTypeConstants()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getEnums()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getTypes()) |> Vec\flatten($$),
Vec\map($scopes, $s ==> $s->getNewtypes()) |> Vec\flatten($$),
);
}