Skip to content

Commit c356203

Browse files
committed
Remove ES5 specific identifier handling
1 parent 7eb74fd commit c356203

38 files changed

+411
-966
lines changed

src/compiler/checker.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6485,7 +6485,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
64856485
return parentName;
64866486
}
64876487
const memberName = symbolName(type.symbol);
6488-
if (isIdentifierText(memberName, ScriptTarget.ES5)) {
6488+
if (isIdentifierText(memberName)) {
64896489
return appendReferenceToType(
64906490
parentName as TypeReferenceNode | ImportTypeNode,
64916491
factory.createTypeReferenceNode(memberName, /*typeArguments*/ undefined),
@@ -8509,7 +8509,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
85098509
if (isSingleOrDoubleQuote(firstChar) && some(symbol.declarations, hasNonGlobalAugmentationExternalModuleSymbol)) {
85108510
return factory.createStringLiteral(getSpecifierForModuleSymbol(symbol, context));
85118511
}
8512-
if (index === 0 || canUsePropertyAccess(symbolName, languageVersion)) {
8512+
if (index === 0 || canUsePropertyAccess(symbolName)) {
85138513
const identifier = setEmitFlags(factory.createIdentifier(symbolName), EmitFlags.NoAsciiEscaping);
85148514
if (typeParameterNodes) setIdentifierTypeArguments(identifier, factory.createNodeArray<TypeNode | TypeParameterDeclaration>(typeParameterNodes));
85158515
identifier.symbol = symbol;
@@ -8569,7 +8569,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
85698569
return fromNameType;
85708570
}
85718571
const rawName = unescapeLeadingUnderscores(symbol.escapedName);
8572-
return createPropertyNameNodeForIdentifierOrLiteral(rawName, getEmitScriptTarget(compilerOptions), singleQuote, stringNamed, isMethod);
8572+
return createPropertyNameNodeForIdentifierOrLiteral(rawName, singleQuote, stringNamed, isMethod);
85738573
}
85748574

85758575
// See getNameForSymbolFromNameType for a stringy equivalent
@@ -8578,13 +8578,13 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
85788578
if (nameType) {
85798579
if (nameType.flags & TypeFlags.StringOrNumberLiteral) {
85808580
const name = "" + (nameType as StringLiteralType | NumberLiteralType).value;
8581-
if (!isIdentifierText(name, getEmitScriptTarget(compilerOptions)) && (stringNamed || !isNumericLiteralName(name))) {
8581+
if (!isIdentifierText(name) && (stringNamed || !isNumericLiteralName(name))) {
85828582
return factory.createStringLiteral(name, !!singleQuote);
85838583
}
85848584
if (isNumericLiteralName(name) && startsWith(name, "-")) {
85858585
return factory.createComputedPropertyName(factory.createPrefixUnaryExpression(SyntaxKind.MinusToken, factory.createNumericLiteral(-name)));
85868586
}
8587-
return createPropertyNameNodeForIdentifierOrLiteral(name, getEmitScriptTarget(compilerOptions), singleQuote, stringNamed, isMethod);
8587+
return createPropertyNameNodeForIdentifierOrLiteral(name, singleQuote, stringNamed, isMethod);
85888588
}
85898589
if (nameType.flags & TypeFlags.UniqueESSymbol) {
85908590
return factory.createComputedPropertyName(symbolToExpression((nameType as UniqueESSymbolType).symbol, context, SymbolFlags.Value));
@@ -9511,7 +9511,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
95119511
}
95129512
exports = arrayFrom(membersSet);
95139513
}
9514-
return filter(exports, m => isNamespaceMember(m) && isIdentifierText(m.escapedName as string, ScriptTarget.ESNext));
9514+
return filter(exports, m => isNamespaceMember(m) && isIdentifierText(m.escapedName as string));
95159515
}
95169516

95179517
function isTypeOnlyNamespace(symbol: Symbol) {
@@ -10169,7 +10169,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1016910169
!some(getPropertiesOfType(typeToSerialize), p => isLateBoundName(p.escapedName)) &&
1017010170
!some(getPropertiesOfType(typeToSerialize), p => some(p.declarations, d => getSourceFileOfNode(d) !== ctxSrc)) &&
1017110171
every(getPropertiesOfType(typeToSerialize), p => {
10172-
if (!isIdentifierText(symbolName(p), languageVersion)) {
10172+
if (!isIdentifierText(symbolName(p))) {
1017310173
return false;
1017410174
}
1017510175
if (!(p.flags & SymbolFlags.Accessor)) {
@@ -10497,7 +10497,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1049710497
else if (localName === InternalSymbolName.ExportEquals) {
1049810498
localName = "_exports";
1049910499
}
10500-
localName = isIdentifierText(localName, languageVersion) && !isStringANonContextualKeyword(localName) ? localName : "_" + localName.replace(/[^a-z0-9]/gi, "_");
10500+
localName = isIdentifierText(localName) && !isStringANonContextualKeyword(localName) ? localName : "_" + localName.replace(/[^a-z0-9]/gi, "_");
1050110501
return localName;
1050210502
}
1050310503

@@ -10588,7 +10588,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1058810588
if (nameType) {
1058910589
if (nameType.flags & TypeFlags.StringOrNumberLiteral) {
1059010590
const name = "" + (nameType as StringLiteralType | NumberLiteralType).value;
10591-
if (!isIdentifierText(name, getEmitScriptTarget(compilerOptions)) && !isNumericLiteralName(name)) {
10591+
if (!isIdentifierText(name) && !isNumericLiteralName(name)) {
1059210592
return `"${escapeString(name, CharacterCodes.doubleQuote)}"`;
1059310593
}
1059410594
if (isNumericLiteralName(name) && startsWith(name, "-")) {
@@ -21839,7 +21839,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
2183921839
path = `${str}`;
2184021840
}
2184121841
// Otherwise write a dotted name if possible
21842-
else if (isIdentifierText(str, getEmitScriptTarget(compilerOptions))) {
21842+
else if (isIdentifierText(str)) {
2184321843
path = `${path}.${str}`;
2184421844
}
2184521845
// Failing that, check if the name is already a computed name

src/compiler/expressionToTypeNode.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ import {
2525
getEffectiveSetAccessorTypeAnnotationNode,
2626
getEffectiveTypeAnnotationNode,
2727
getEmitFlags,
28-
getEmitScriptTarget,
2928
getFunctionFlags,
3029
getJSDocType,
3130
getJSDocTypeAssertionType,
@@ -502,7 +501,7 @@ export function createSyntacticTypeNodeBuilder(
502501
}
503502
literal = literalNode;
504503
}
505-
if (literal.kind === SyntaxKind.StringLiteral && isIdentifierText(literal.text, getEmitScriptTarget(options))) {
504+
if (literal.kind === SyntaxKind.StringLiteral && isIdentifierText(literal.text)) {
506505
return factory.createIdentifier(literal.text);
507506
}
508507
if (literal.kind === SyntaxKind.NumericLiteral && !literal.text.startsWith("-")) {

src/compiler/parser.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2371,7 +2371,7 @@ namespace Parser {
23712371

23722372
// Otherwise, if this isn't a well-known keyword-like identifier, give the generic fallback message.
23732373
const expressionText = isIdentifierNode(node) ? idText(node) : undefined;
2374-
if (!expressionText || !isIdentifierText(expressionText, languageVersion)) {
2374+
if (!expressionText || !isIdentifierText(expressionText)) {
23752375
parseErrorAtCurrentToken(Diagnostics._0_expected, tokenToString(SyntaxKind.SemicolonToken));
23762376
return;
23772377
}

src/compiler/program.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4364,7 +4364,7 @@ export function createProgram(_rootNamesOrOptions: readonly string[] | CreatePro
43644364
createOptionValueDiagnostic("jsxFactory", Diagnostics.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name, options.jsxFactory);
43654365
}
43664366
}
4367-
else if (options.reactNamespace && !isIdentifierText(options.reactNamespace, languageVersion)) {
4367+
else if (options.reactNamespace && !isIdentifierText(options.reactNamespace)) {
43684368
createOptionValueDiagnostic("reactNamespace", Diagnostics.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier, options.reactNamespace);
43694369
}
43704370

0 commit comments

Comments
 (0)