From: Evan You Date: Thu, 23 Nov 2023 15:07:51 +0000 (+0800) Subject: perf: optimize position cloning X-Git-Tag: v3.4.0-alpha.2~19 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=20732366b9b3530d33b842cf1fc985919afb9317;p=thirdparty%2Fvuejs%2Fcore.git perf: optimize position cloning --- diff --git a/packages/compiler-core/src/utils.ts b/packages/compiler-core/src/utils.ts index 7e3eb46a81..0d6e0f5fe1 100644 --- a/packages/compiler-core/src/utils.ts +++ b/packages/compiler-core/src/utils.ts @@ -36,7 +36,7 @@ import { GUARD_REACTIVE_PROPS, WITH_MEMO } from './runtimeHelpers' -import { isString, isObject, extend, NOOP } from '@vue/shared' +import { isString, isObject, NOOP } from '@vue/shared' import { PropsExpression } from './transforms/transformElement' import { parseExpression } from '@babel/parser' import { Expression } from '@babel/types' @@ -181,7 +181,11 @@ export function advancePositionWithClone( numberOfCharacters: number = source.length ): Position { return advancePositionWithMutation( - extend({}, pos), + { + offset: pos.offset, + line: pos.line, + column: pos.column + }, source, numberOfCharacters )