From 491c921f2bc2996b0f6c9bc81cc22428f6e2bf40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hu=C3=A1ng=20J=C3=B9nli=C3=A0ng?= Date: Fri, 19 Nov 2021 11:48:30 -0500 Subject: [PATCH] rename token type and methods --- .../src/convert/convertTokens.cjs | 2 +- packages/babel-parser/src/parser/expression.js | 8 ++++---- packages/babel-parser/src/parser/statement.js | 2 +- .../babel-parser/src/plugins/typescript/index.js | 4 ++-- packages/babel-parser/src/tokenizer/index.js | 14 +++++++------- packages/babel-parser/src/tokenizer/types.js | 2 +- packages/babel-parser/src/util/location.js | 2 +- 7 files changed, 17 insertions(+), 17 deletions(-) diff --git a/eslint/babel-eslint-parser/src/convert/convertTokens.cjs b/eslint/babel-eslint-parser/src/convert/convertTokens.cjs index 77622c890df7..634410f04558 100644 --- a/eslint/babel-eslint-parser/src/convert/convertTokens.cjs +++ b/eslint/babel-eslint-parser/src/convert/convertTokens.cjs @@ -179,7 +179,7 @@ function convertToken(token, source, tl) { token.value = `${token.value}n`; } else if (label === tl.privateName) { token.type = "PrivateIdentifier"; - } else if (label === tl.templateMiddle || label === tl.templateTail) { + } else if (label === tl.templateNonTail || label === tl.templateTail) { token.type = "Template"; } diff --git a/packages/babel-parser/src/parser/expression.js b/packages/babel-parser/src/parser/expression.js index 5c3a15577f25..eb956a83987c 100644 --- a/packages/babel-parser/src/parser/expression.js +++ b/packages/babel-parser/src/parser/expression.js @@ -708,7 +708,7 @@ export default class ExpressionParser extends LValParser { ): N.Expression { if (!noCalls && this.eat(tt.doubleColon)) { return this.parseBind(base, startPos, startLoc, noCalls, state); - } else if (this.match(tt.templateMiddle) || this.match(tt.templateTail)) { + } else if (this.match(tt.templateNonTail) || this.match(tt.templateTail)) { return this.parseTaggedTemplateExpression( base, startPos, @@ -1153,7 +1153,7 @@ export default class ExpressionParser extends LValParser { case tt._new: return this.parseNewOrNewTarget(); - case tt.templateMiddle: + case tt.templateNonTail: case tt.templateTail: return this.parseTemplate(false); @@ -1870,7 +1870,7 @@ export default class ExpressionParser extends LValParser { node.quasis = [curElt]; while (!curElt.tail) { node.expressions.push(this.parseTemplateSubstitution()); - this.readTemplateMiddle(); + this.readTemplateContinuation(); node.quasis.push((curElt = this.parseTemplateElement(isTagged))); } return this.finishNode(node, "TemplateLiteral"); @@ -2698,7 +2698,7 @@ export default class ExpressionParser extends LValParser { this.match(tt.plusMin) || this.match(tt.parenL) || this.match(tt.bracketL) || - this.match(tt.templateMiddle) || + this.match(tt.templateNonTail) || this.match(tt.templateTail) || // Sometimes the tokenizer generates tt.slash for regexps, and this is // handler by parseExprAtom diff --git a/packages/babel-parser/src/parser/statement.js b/packages/babel-parser/src/parser/statement.js index d7c72bde20c2..fb76dea08504 100644 --- a/packages/babel-parser/src/parser/statement.js +++ b/packages/babel-parser/src/parser/statement.js @@ -96,7 +96,7 @@ function babel7CompatTokens(tokens) { continue; } } - if (type === tt.templateMiddle || type === tt.templateTail) { + if (type === tt.templateNonTail || type === tt.templateTail) { if (!process.env.BABEL_8_BREAKING) { const { loc, start, value, end } = token; const backquoteEnd = start + 1; diff --git a/packages/babel-parser/src/plugins/typescript/index.js b/packages/babel-parser/src/plugins/typescript/index.js index da1c16c80223..2129fc8f967b 100644 --- a/packages/babel-parser/src/plugins/typescript/index.js +++ b/packages/babel-parser/src/plugins/typescript/index.js @@ -1071,7 +1071,7 @@ export default (superClass: Class): Class => } return this.tsParseParenthesizedType(); - case tt.templateMiddle: + case tt.templateNonTail: case tt.templateTail: return this.tsParseTemplateLiteralType(); default: { @@ -2198,7 +2198,7 @@ export default (superClass: Class): Class => return this.finishCallExpression(node, state.optionalChainMember); } else if ( - this.match(tt.templateMiddle) || + this.match(tt.templateNonTail) || this.match(tt.templateTail) ) { const result = this.parseTaggedTemplateExpression( diff --git a/packages/babel-parser/src/tokenizer/index.js b/packages/babel-parser/src/tokenizer/index.js index 494fcca0d7f1..9c70fe7ab5ea 100644 --- a/packages/babel-parser/src/tokenizer/index.js +++ b/packages/babel-parser/src/tokenizer/index.js @@ -916,7 +916,7 @@ export default class Tokenizer extends ParserErrors { return; case charCodes.graveAccent: - this.readTmplToken(); + this.readTemplateToken(); return; case charCodes.digit0: { @@ -1369,18 +1369,18 @@ export default class Tokenizer extends ParserErrors { this.finishToken(tt.string, out); } - // Reads template string tokens. - - readTemplateMiddle(): void { + // Reads tempalte continuation `}...` + readTemplateContinuation(): void { if (!this.match(tt.braceR)) { this.unexpected(this.state.start, tt.braceR); } // rewind pos to `}` this.state.pos--; - this.readTmplToken(); + this.readTemplateToken(); } - readTmplToken(): void { + // Reads template string tokens. + readTemplateToken(): void { let out = "", chunkStart = this.state.pos, // eat '`' or `}` containsInvalid = false; @@ -1402,7 +1402,7 @@ export default class Tokenizer extends ParserErrors { ) { this.state.pos += 2; // eat '${' out += this.input.slice(chunkStart, this.state.pos); - this.finishToken(tt.templateMiddle, containsInvalid ? null : out); + this.finishToken(tt.templateNonTail, containsInvalid ? null : out); return; } if (ch === charCodes.backslash) { diff --git a/packages/babel-parser/src/tokenizer/types.js b/packages/babel-parser/src/tokenizer/types.js index 531867d4a668..0d2606063c8b 100644 --- a/packages/babel-parser/src/tokenizer/types.js +++ b/packages/babel-parser/src/tokenizer/types.js @@ -159,7 +159,7 @@ export const tt: { [name: string]: TokenType } = { backQuote: createToken("`", { startsExpr }), dollarBraceL: createToken("${", { beforeExpr, startsExpr }), templateTail: createToken("...`", { startsExpr }), - templateMiddle: createToken("...${", { beforeExpr, startsExpr }), + templateNonTail: createToken("...${", { beforeExpr, startsExpr }), at: createToken("@"), hash: createToken("#", { startsExpr }), diff --git a/packages/babel-parser/src/util/location.js b/packages/babel-parser/src/util/location.js index 66f29cc79875..c2bfd6f4ba9c 100644 --- a/packages/babel-parser/src/util/location.js +++ b/packages/babel-parser/src/util/location.js @@ -54,7 +54,7 @@ export function getLineInfo(input: string, offset: number): Position { /** * creates a new position with a non-zero column offset from the given position. * This function should be only be used when we create AST node out of the token - * boundaries, such as TemplateElement ends before tt.templateMiddle. This + * boundaries, such as TemplateElement ends before tt.templateNonTail. This * function does not skip whitespaces. * * @export