refactor(ngcc): rename `ReexportStatement` to `WildcardReexportStatement` (#36989)
The term `ReexportStatement` is too general for this particular concept. Here the re-export actually refers to a wildcard where all the module exports are being re-exported. When we introduce other re-export statement types later this will be confusing. PR Close #36989
This commit is contained in:
parent
9846b19986
commit
0672a0e547
|
@ -8,7 +8,7 @@
|
||||||
import * as ts from 'typescript';
|
import * as ts from 'typescript';
|
||||||
|
|
||||||
import {AbsoluteFsPath} from '../../../src/ngtsc/file_system';
|
import {AbsoluteFsPath} from '../../../src/ngtsc/file_system';
|
||||||
import {isReexportStatement, isRequireCall, RequireCall} from '../host/commonjs_umd_utils';
|
import {isRequireCall, isWildcardReexportStatement, RequireCall} from '../host/commonjs_umd_utils';
|
||||||
|
|
||||||
import {DependencyHostBase} from './dependency_host';
|
import {DependencyHostBase} from './dependency_host';
|
||||||
import {ResolvedDeepImport, ResolvedRelativeModule} from './module_resolver';
|
import {ResolvedDeepImport, ResolvedRelativeModule} from './module_resolver';
|
||||||
|
@ -59,7 +59,7 @@ export class CommonJsDependencyHost extends DependencyHostBase {
|
||||||
// Import for the side-effects only:
|
// Import for the side-effects only:
|
||||||
// `require('...')`
|
// `require('...')`
|
||||||
requireCalls.push(stmt.expression);
|
requireCalls.push(stmt.expression);
|
||||||
} else if (isReexportStatement(stmt)) {
|
} else if (isWildcardReexportStatement(stmt)) {
|
||||||
// Re-export in one of the following formats:
|
// Re-export in one of the following formats:
|
||||||
// - `__export(require('...'))`
|
// - `__export(require('...'))`
|
||||||
// - `__export(<identifier>)`
|
// - `__export(<identifier>)`
|
||||||
|
|
|
@ -14,7 +14,7 @@ import {Logger} from '../logging/logger';
|
||||||
import {BundleProgram} from '../packages/bundle_program';
|
import {BundleProgram} from '../packages/bundle_program';
|
||||||
import {FactoryMap, getTsHelperFnFromIdentifier, isDefined, stripExtension} from '../utils';
|
import {FactoryMap, getTsHelperFnFromIdentifier, isDefined, stripExtension} from '../utils';
|
||||||
|
|
||||||
import {ExportDeclaration, ExportStatement, findNamespaceOfIdentifier, findRequireCallReference, isExportStatement, isReexportStatement, isRequireCall, ReexportStatement, RequireCall} from './commonjs_umd_utils';
|
import {ExportDeclaration, ExportStatement, findNamespaceOfIdentifier, findRequireCallReference, isExportStatement, isRequireCall, isWildcardReexportStatement, RequireCall, WildcardReexportStatement} from './commonjs_umd_utils';
|
||||||
import {Esm5ReflectionHost} from './esm5_host';
|
import {Esm5ReflectionHost} from './esm5_host';
|
||||||
import {NgccClassSymbol} from './ngcc_host';
|
import {NgccClassSymbol} from './ngcc_host';
|
||||||
|
|
||||||
|
@ -101,8 +101,8 @@ export class CommonJsReflectionHost extends Esm5ReflectionHost {
|
||||||
if (isExportStatement(statement)) {
|
if (isExportStatement(statement)) {
|
||||||
const exportDeclaration = this.extractCommonJsExportDeclaration(statement);
|
const exportDeclaration = this.extractCommonJsExportDeclaration(statement);
|
||||||
moduleMap.set(exportDeclaration.name, exportDeclaration.declaration);
|
moduleMap.set(exportDeclaration.name, exportDeclaration.declaration);
|
||||||
} else if (isReexportStatement(statement)) {
|
} else if (isWildcardReexportStatement(statement)) {
|
||||||
const reexports = this.extractCommonJsReexports(statement, sourceFile);
|
const reexports = this.extractCommonJsWildcardReexports(statement, sourceFile);
|
||||||
for (const reexport of reexports) {
|
for (const reexport of reexports) {
|
||||||
moduleMap.set(reexport.name, reexport.declaration);
|
moduleMap.set(reexport.name, reexport.declaration);
|
||||||
}
|
}
|
||||||
|
@ -130,8 +130,8 @@ export class CommonJsReflectionHost extends Esm5ReflectionHost {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private extractCommonJsReexports(statement: ReexportStatement, containingFile: ts.SourceFile):
|
private extractCommonJsWildcardReexports(
|
||||||
ExportDeclaration[] {
|
statement: WildcardReexportStatement, containingFile: ts.SourceFile): ExportDeclaration[] {
|
||||||
const reexportArg = statement.expression.arguments[0];
|
const reexportArg = statement.expression.arguments[0];
|
||||||
|
|
||||||
const requireCall = isRequireCall(reexportArg) ?
|
const requireCall = isRequireCall(reexportArg) ?
|
||||||
|
|
|
@ -39,7 +39,7 @@ export interface ExportStatement extends ts.ExpressionStatement {
|
||||||
* expression and can be either a `require('...')` call or an identifier (initialized via a
|
* expression and can be either a `require('...')` call or an identifier (initialized via a
|
||||||
* `require('...')` call).
|
* `require('...')` call).
|
||||||
*/
|
*/
|
||||||
export interface ReexportStatement extends ts.ExpressionStatement {
|
export interface WildcardReexportStatement extends ts.ExpressionStatement {
|
||||||
expression: ts.CallExpression;
|
expression: ts.CallExpression;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -94,7 +94,7 @@ export function isExportStatement(stmt: ts.Statement): stmt is ExportStatement {
|
||||||
* - `tslib.__export(<foo>, exports)`
|
* - `tslib.__export(<foo>, exports)`
|
||||||
* - `tslib.__exportStar(<foo>, exports)`
|
* - `tslib.__exportStar(<foo>, exports)`
|
||||||
*/
|
*/
|
||||||
export function isReexportStatement(stmt: ts.Statement): stmt is ReexportStatement {
|
export function isWildcardReexportStatement(stmt: ts.Statement): stmt is WildcardReexportStatement {
|
||||||
// Ensure it is a call expression statement.
|
// Ensure it is a call expression statement.
|
||||||
if (!ts.isExpressionStatement(stmt) || !ts.isCallExpression(stmt.expression)) {
|
if (!ts.isExpressionStatement(stmt) || !ts.isCallExpression(stmt.expression)) {
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -14,7 +14,7 @@ import {Logger} from '../logging/logger';
|
||||||
import {BundleProgram} from '../packages/bundle_program';
|
import {BundleProgram} from '../packages/bundle_program';
|
||||||
import {FactoryMap, getTsHelperFnFromIdentifier, stripExtension} from '../utils';
|
import {FactoryMap, getTsHelperFnFromIdentifier, stripExtension} from '../utils';
|
||||||
|
|
||||||
import {ExportDeclaration, ExportStatement, findNamespaceOfIdentifier, findRequireCallReference, isExportStatement, isReexportStatement, isRequireCall, ReexportStatement} from './commonjs_umd_utils';
|
import {ExportDeclaration, ExportStatement, findNamespaceOfIdentifier, findRequireCallReference, isExportStatement, isRequireCall, isWildcardReexportStatement, WildcardReexportStatement} from './commonjs_umd_utils';
|
||||||
import {Esm5ReflectionHost} from './esm5_host';
|
import {Esm5ReflectionHost} from './esm5_host';
|
||||||
import {stripParentheses} from './utils';
|
import {stripParentheses} from './utils';
|
||||||
|
|
||||||
|
@ -92,8 +92,8 @@ export class UmdReflectionHost extends Esm5ReflectionHost {
|
||||||
if (isExportStatement(statement)) {
|
if (isExportStatement(statement)) {
|
||||||
const exportDeclaration = this.extractUmdExportDeclaration(statement);
|
const exportDeclaration = this.extractUmdExportDeclaration(statement);
|
||||||
moduleMap.set(exportDeclaration.name, exportDeclaration.declaration);
|
moduleMap.set(exportDeclaration.name, exportDeclaration.declaration);
|
||||||
} else if (isReexportStatement(statement)) {
|
} else if (isWildcardReexportStatement(statement)) {
|
||||||
const reexports = this.extractUmdReexports(statement, sourceFile);
|
const reexports = this.extractUmdWildcardReexports(statement, sourceFile);
|
||||||
for (const reexport of reexports) {
|
for (const reexport of reexports) {
|
||||||
moduleMap.set(reexport.name, reexport.declaration);
|
moduleMap.set(reexport.name, reexport.declaration);
|
||||||
}
|
}
|
||||||
|
@ -145,8 +145,8 @@ export class UmdReflectionHost extends Esm5ReflectionHost {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private extractUmdReexports(statement: ReexportStatement, containingFile: ts.SourceFile):
|
private extractUmdWildcardReexports(
|
||||||
ExportDeclaration[] {
|
statement: WildcardReexportStatement, containingFile: ts.SourceFile): ExportDeclaration[] {
|
||||||
const reexportArg = statement.expression.arguments[0];
|
const reexportArg = statement.expression.arguments[0];
|
||||||
|
|
||||||
const requireCall = isRequireCall(reexportArg) ?
|
const requireCall = isRequireCall(reexportArg) ?
|
||||||
|
|
Loading…
Reference in New Issue