diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-callback-cross-context.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-callback-cross-context.expect.md index d24536d616a43..c1a6dfb3eae11 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-callback-cross-context.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-callback-cross-context.expect.md @@ -57,67 +57,62 @@ import { Stringify } from "shared-runtime"; * - cb1 is not assumed to be called since it's only used as a call operand */ function useFoo(t0) { - const $ = _c(14); - let arr1; - let arr2; + const $ = _c(13); + const { arr1, arr2 } = t0; let t1; - if ($[0] !== t0) { - ({ arr1, arr2 } = t0); - let t2; - if ($[4] !== arr1[0]) { - t2 = (e) => arr1[0].value + e.value; - $[4] = arr1[0]; - $[5] = t2; - } else { - t2 = $[5]; - } - const cb1 = t2; - t1 = () => arr1.map(cb1); - $[0] = t0; - $[1] = arr1; - $[2] = arr2; - $[3] = t1; + if ($[0] !== arr1[0]) { + t1 = (e) => arr1[0].value + e.value; + $[0] = arr1[0]; + $[1] = t1; } else { - arr1 = $[1]; - arr2 = $[2]; - t1 = $[3]; + t1 = $[1]; } - const getArrMap1 = t1; + const cb1 = t1; let t2; - if ($[6] !== arr2) { - t2 = (e_0) => arr2[0].value + e_0.value; - $[6] = arr2; - $[7] = t2; + if ($[2] !== arr1 || $[3] !== cb1) { + t2 = () => arr1.map(cb1); + $[2] = arr1; + $[3] = cb1; + $[4] = t2; } else { - t2 = $[7]; + t2 = $[4]; } - const cb2 = t2; + const getArrMap1 = t2; let t3; - if ($[8] !== arr1 || $[9] !== cb2) { - t3 = () => arr1.map(cb2); - $[8] = arr1; - $[9] = cb2; - $[10] = t3; + if ($[5] !== arr2) { + t3 = (e_0) => arr2[0].value + e_0.value; + $[5] = arr2; + $[6] = t3; } else { - t3 = $[10]; + t3 = $[6]; } - const getArrMap2 = t3; + const cb2 = t3; let t4; - if ($[11] !== getArrMap1 || $[12] !== getArrMap2) { - t4 = ( + if ($[7] !== arr1 || $[8] !== cb2) { + t4 = () => arr1.map(cb2); + $[7] = arr1; + $[8] = cb2; + $[9] = t4; + } else { + t4 = $[9]; + } + const getArrMap2 = t4; + let t5; + if ($[10] !== getArrMap1 || $[11] !== getArrMap2) { + t5 = ( ); - $[11] = getArrMap1; - $[12] = getArrMap2; - $[13] = t4; + $[10] = getArrMap1; + $[11] = getArrMap2; + $[12] = t5; } else { - t4 = $[13]; + t5 = $[12]; } - return t4; + return t5; } export const FIXTURE_ENTRYPOINT = { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/new-mutability/array-map-named-callback-cross-context.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/new-mutability/array-map-named-callback-cross-context.expect.md index a36b862052ab2..7bc2c193cf7cc 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/new-mutability/array-map-named-callback-cross-context.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/new-mutability/array-map-named-callback-cross-context.expect.md @@ -58,67 +58,62 @@ import { Stringify } from "shared-runtime"; * - cb1 is not assumed to be called since it's only used as a call operand */ function useFoo(t0) { - const $ = _c(14); - let arr1; - let arr2; + const $ = _c(13); + const { arr1, arr2 } = t0; let t1; - if ($[0] !== t0) { - ({ arr1, arr2 } = t0); - let t2; - if ($[4] !== arr1[0]) { - t2 = (e) => arr1[0].value + e.value; - $[4] = arr1[0]; - $[5] = t2; - } else { - t2 = $[5]; - } - const cb1 = t2; - t1 = () => arr1.map(cb1); - $[0] = t0; - $[1] = arr1; - $[2] = arr2; - $[3] = t1; + if ($[0] !== arr1[0]) { + t1 = (e) => arr1[0].value + e.value; + $[0] = arr1[0]; + $[1] = t1; } else { - arr1 = $[1]; - arr2 = $[2]; - t1 = $[3]; + t1 = $[1]; } - const getArrMap1 = t1; + const cb1 = t1; let t2; - if ($[6] !== arr2) { - t2 = (e_0) => arr2[0].value + e_0.value; - $[6] = arr2; - $[7] = t2; + if ($[2] !== arr1 || $[3] !== cb1) { + t2 = () => arr1.map(cb1); + $[2] = arr1; + $[3] = cb1; + $[4] = t2; } else { - t2 = $[7]; + t2 = $[4]; } - const cb2 = t2; + const getArrMap1 = t2; let t3; - if ($[8] !== arr1 || $[9] !== cb2) { - t3 = () => arr1.map(cb2); - $[8] = arr1; - $[9] = cb2; - $[10] = t3; + if ($[5] !== arr2) { + t3 = (e_0) => arr2[0].value + e_0.value; + $[5] = arr2; + $[6] = t3; } else { - t3 = $[10]; + t3 = $[6]; } - const getArrMap2 = t3; + const cb2 = t3; let t4; - if ($[11] !== getArrMap1 || $[12] !== getArrMap2) { - t4 = ( + if ($[7] !== arr1 || $[8] !== cb2) { + t4 = () => arr1.map(cb2); + $[7] = arr1; + $[8] = cb2; + $[9] = t4; + } else { + t4 = $[9]; + } + const getArrMap2 = t4; + let t5; + if ($[10] !== getArrMap1 || $[11] !== getArrMap2) { + t5 = ( ); - $[11] = getArrMap1; - $[12] = getArrMap2; - $[13] = t4; + $[10] = getArrMap1; + $[11] = getArrMap2; + $[12] = t5; } else { - t4 = $[13]; + t5 = $[12]; } - return t4; + return t5; } export const FIXTURE_ENTRYPOINT = { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/new-mutability/shared-hook-calls.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/new-mutability/shared-hook-calls.expect.md index 3f361c2019043..39bd61aaf34a7 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/new-mutability/shared-hook-calls.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/new-mutability/shared-hook-calls.expect.md @@ -30,60 +30,47 @@ import { c as _c, useFire } from "react/compiler-runtime"; // @enableFire @enabl import { fire } from "react"; function Component(t0) { - const $ = _c(13); - let bar; - let baz; - let foo; - if ($[0] !== t0) { - ({ bar, baz } = t0); - let t1; - if ($[4] !== bar) { - t1 = () => { - console.log(bar); - }; - $[4] = bar; - $[5] = t1; - } else { - t1 = $[5]; - } - foo = t1; - $[0] = t0; - $[1] = bar; - $[2] = baz; - $[3] = foo; - } else { - bar = $[1]; - baz = $[2]; - foo = $[3]; - } - const t1 = useFire(foo); - const t2 = useFire(baz); - let t3; - if ($[6] !== bar || $[7] !== t1 || $[8] !== t2) { - t3 = () => { - t1(bar); - t2(bar); + const $ = _c(9); + const { bar, baz } = t0; + let t1; + if ($[0] !== bar) { + t1 = () => { + console.log(bar); }; - $[6] = bar; - $[7] = t1; - $[8] = t2; - $[9] = t3; + $[0] = bar; + $[1] = t1; } else { - t3 = $[9]; + t1 = $[1]; } - useEffect(t3); + const foo = t1; + const t2 = useFire(foo); + const t3 = useFire(baz); let t4; - if ($[10] !== bar || $[11] !== t1) { + if ($[2] !== bar || $[3] !== t2 || $[4] !== t3) { t4 = () => { - t1(bar); + t2(bar); + t3(bar); }; - $[10] = bar; - $[11] = t1; - $[12] = t4; + $[2] = bar; + $[3] = t2; + $[4] = t3; + $[5] = t4; } else { - t4 = $[12]; + t4 = $[5]; } useEffect(t4); + let t5; + if ($[6] !== bar || $[7] !== t2) { + t5 = () => { + t2(bar); + }; + $[6] = bar; + $[7] = t2; + $[8] = t5; + } else { + t5 = $[8]; + } + useEffect(t5); return null; } diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/transform-fire/shared-hook-calls.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/transform-fire/shared-hook-calls.expect.md index d98b3e03ab926..92dbf9843ad65 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/transform-fire/shared-hook-calls.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/transform-fire/shared-hook-calls.expect.md @@ -30,60 +30,47 @@ import { c as _c, useFire } from "react/compiler-runtime"; // @enableFire import { fire } from "react"; function Component(t0) { - const $ = _c(13); - let bar; - let baz; - let foo; - if ($[0] !== t0) { - ({ bar, baz } = t0); - let t1; - if ($[4] !== bar) { - t1 = () => { - console.log(bar); - }; - $[4] = bar; - $[5] = t1; - } else { - t1 = $[5]; - } - foo = t1; - $[0] = t0; - $[1] = bar; - $[2] = baz; - $[3] = foo; - } else { - bar = $[1]; - baz = $[2]; - foo = $[3]; - } - const t1 = useFire(foo); - const t2 = useFire(baz); - let t3; - if ($[6] !== bar || $[7] !== t1 || $[8] !== t2) { - t3 = () => { - t1(bar); - t2(bar); + const $ = _c(9); + const { bar, baz } = t0; + let t1; + if ($[0] !== bar) { + t1 = () => { + console.log(bar); }; - $[6] = bar; - $[7] = t1; - $[8] = t2; - $[9] = t3; + $[0] = bar; + $[1] = t1; } else { - t3 = $[9]; + t1 = $[1]; } - useEffect(t3); + const foo = t1; + const t2 = useFire(foo); + const t3 = useFire(baz); let t4; - if ($[10] !== bar || $[11] !== t1) { + if ($[2] !== bar || $[3] !== t2 || $[4] !== t3) { t4 = () => { - t1(bar); + t2(bar); + t3(bar); }; - $[10] = bar; - $[11] = t1; - $[12] = t4; + $[2] = bar; + $[3] = t2; + $[4] = t3; + $[5] = t4; } else { - t4 = $[12]; + t4 = $[5]; } useEffect(t4); + let t5; + if ($[6] !== bar || $[7] !== t2) { + t5 = () => { + t2(bar); + }; + $[6] = bar; + $[7] = t2; + $[8] = t5; + } else { + t5 = $[8]; + } + useEffect(t5); return null; }