/
githubmr
/
facebook-react
Обзор
Документация
Войти
/
githubmr
/
facebook-react
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
main
compiler/packages/babel-plugin-react-compiler/src/ReactiveScopes/PruneAllReactiveScopes.ts
36 строк
1 KB
Jan Kassens
Compiler: unfork prettier config (#30205)
19 июл 2024, 00:00
Не верифицирован
19 июл 2024, 00:00
fd2b3e1
Код
Авторство
О чём код?
/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ import { ReactiveFunction, ReactiveScopeBlock, ReactiveStatement, } from '../HIR/HIR'; import { ReactiveFunctionTransform, Transformed, visitReactiveFunction, } from './visitors'; /* * Removes *all* reactive scopes. Intended for experimentation only, to allow * accurately removing memoization using the compiler pipeline to get a baseline * for performance of a product without memoization applied. */ export function pruneAllReactiveScopes(fn: ReactiveFunction): void { visitReactiveFunction(fn, new Transform(), undefined); } class Transform extends ReactiveFunctionTransform<void> { override transformScope( scopeBlock: ReactiveScopeBlock, state: void, ): Transformed<ReactiveStatement> { this.visitScope(scopeBlock, state); return {kind: 'replace-many', value: scopeBlock.instructions}; } }