From 37e79aec96743e9d4f5fa0b1a77d70637be9b0e1 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Wed, 8 Apr 2026 10:43:26 -0400 Subject: [PATCH] tidy up --- .../phases/1-parse/read/expression.js | 9 ++++----- .../compiler/phases/1-parse/utils/bracket.js | 19 ------------------- 2 files changed, 4 insertions(+), 24 deletions(-) diff --git a/packages/svelte/src/compiler/phases/1-parse/read/expression.js b/packages/svelte/src/compiler/phases/1-parse/read/expression.js index f5e7820b9c..c1b1fd753c 100644 --- a/packages/svelte/src/compiler/phases/1-parse/read/expression.js +++ b/packages/svelte/src/compiler/phases/1-parse/read/expression.js @@ -1,18 +1,17 @@ /** @import { Expression } from 'estree' */ /** @import { Parser } from '../index.js' */ import { parse_expression_at } from '../acorn.js'; -import { find_matching_bracket } from '../utils/bracket.js'; -import * as e from '../../../errors.js'; +import { match_bracket } from '../utils/bracket.js'; /** * @param {Parser} parser - * @param {string} [opening_token] + * @param {string} [open] * @returns {Expression} */ -export function get_loose_identifier(parser, opening_token) { +export function get_loose_identifier(parser, open = '{') { // Find the next } and treat it as the end of the expression const start = parser.index; - const end = find_matching_bracket(parser.template, parser.index, opening_token ?? '{'); + const end = match_bracket(parser.template, parser.index, open, open === '{' ? '}' : ')', 1) - 1; parser.index = end; diff --git a/packages/svelte/src/compiler/phases/1-parse/utils/bracket.js b/packages/svelte/src/compiler/phases/1-parse/utils/bracket.js index a4fd6a05fc..64a24f7705 100644 --- a/packages/svelte/src/compiler/phases/1-parse/utils/bracket.js +++ b/packages/svelte/src/compiler/phases/1-parse/utils/bracket.js @@ -66,25 +66,6 @@ function count_leading_backslashes(string, search_start_index) { return count; } -/** - * Finds the corresponding closing bracket, ignoring brackets found inside comments, strings, or regex expressions. - * @param {string} template The string to search. - * @param {number} index The index to begin the search at. - * @param {string} open The opening bracket (ex: `'{'` will search for `'}'`). - * @returns {number} The index of the closing bracket - */ -export function find_matching_bracket(template, index, open) { - const close = default_brackets[open]; - return match_bracket(template, index, open, close, 1) - 1; -} - -/** @type {Record} */ -const default_brackets = { - '{': '}', - '(': ')', - '[': ']' -}; - /** * @param {string} source * @param {number} start