( target: Module | ExternalModule, name: string, importerForSideEffects: Module | undefined, isExportAllSearch: boolean | undefined, searchedNamesAndModules = new Map<string, Set<Module | ExternalModule>>(), importChain: string[], sideEffectModules?: Set<Module>, exportOrReexportModules?: Set<Module> )
| 159 | }; |
| 160 | |
| 161 | function getVariableForExportNameRecursive( |
| 162 | target: Module | ExternalModule, |
| 163 | name: string, |
| 164 | importerForSideEffects: Module | undefined, |
| 165 | isExportAllSearch: boolean | undefined, |
| 166 | searchedNamesAndModules = new Map<string, Set<Module | ExternalModule>>(), |
| 167 | importChain: string[], |
| 168 | sideEffectModules?: Set<Module>, |
| 169 | exportOrReexportModules?: Set<Module> |
| 170 | ): [variable: Variable | null, options?: VariableOptions] { |
| 171 | const searchedModules = searchedNamesAndModules.get(name); |
| 172 | if (searchedModules) { |
| 173 | if (searchedModules.has(target)) { |
| 174 | return isExportAllSearch ? [null] : error(logCircularReexport(name, target.id)); |
| 175 | } |
| 176 | searchedModules.add(target); |
| 177 | } else { |
| 178 | searchedNamesAndModules.set(name, new Set([target])); |
| 179 | } |
| 180 | return target.getVariableForExportName(name, { |
| 181 | exportOrReexportModules, |
| 182 | importChain, |
| 183 | importerForSideEffects, |
| 184 | isExportAllSearch, |
| 185 | searchedNamesAndModules, |
| 186 | sideEffectModules |
| 187 | }); |
| 188 | } |
| 189 | |
| 190 | function getAndExtendSideEffectModules(variable: Variable, module: Module): Set<Module> { |
| 191 | const sideEffectModules = getOrCreate( |
no test coverage detected
searching dependent graphs…