mirror of
https://github.com/nestjs/nest.git
synced 2026-02-21 23:11:44 +00:00
Merge pull request #16255 from devizi0/master
perf(core): use set instead of array for module registry lookup
This commit is contained in:
@@ -619,7 +619,7 @@ export class Injector {
|
||||
moduleRef,
|
||||
dependencyContext.name!,
|
||||
wrapper,
|
||||
[],
|
||||
new Set<string>(),
|
||||
contextId,
|
||||
inquirer,
|
||||
keyOrIndex,
|
||||
@@ -639,7 +639,7 @@ export class Injector {
|
||||
moduleRef: Module,
|
||||
name: InjectionToken,
|
||||
wrapper: InstanceWrapper,
|
||||
moduleRegistry: any[] = [],
|
||||
moduleRegistry: Set<string> = new Set<string>(),
|
||||
contextId = STATIC_CONTEXT,
|
||||
inquirer?: InstanceWrapper,
|
||||
keyOrIndex?: symbol | string | number,
|
||||
@@ -657,11 +657,11 @@ export class Injector {
|
||||
);
|
||||
}
|
||||
for (const relatedModule of children) {
|
||||
if (moduleRegistry.includes(relatedModule.id)) {
|
||||
if (moduleRegistry.has(relatedModule.id)) {
|
||||
continue;
|
||||
}
|
||||
this.printLookingForProviderLog(name, relatedModule);
|
||||
moduleRegistry.push(relatedModule.id);
|
||||
moduleRegistry.add(relatedModule.id);
|
||||
|
||||
const { providers, exports } = relatedModule;
|
||||
if (!exports.has(name) || !providers.has(name)) {
|
||||
|
||||
Reference in New Issue
Block a user