Home / File/ uncond-access-in-mutable-range.js — react Source File

uncond-access-in-mutable-range.js — react Source File

Architecture documentation for uncond-access-in-mutable-range.js, a javascript file in the react codebase. 1 imports, 0 dependents.

File javascript TestingUtilities Fixtures 1 imports 1 functions

Entity Profile

Dependency Diagram

graph LR
  bf468ed0_700a_28b4_796c_d1b3ddd8ef7f["uncond-access-in-mutable-range.js"]
  006eec3d_77a9_4a47_e6c1_a96d7a6c9c05["shared-runtime"]
  bf468ed0_700a_28b4_796c_d1b3ddd8ef7f --> 006eec3d_77a9_4a47_e6c1_a96d7a6c9c05
  style bf468ed0_700a_28b4_796c_d1b3ddd8ef7f fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

// x.a.b was accessed unconditionally within the mutable range of x.
// As a result, we cannot infer anything about whether `x` or `x.a`
// may be null. This means that it's not safe to hoist reads from x
// (e.g. take `x.a` or `x.a.b` as a dependency).

import {identity, makeObject_Primitives, setProperty} from 'shared-runtime';

function Component({cond, other}) {
  const x = makeObject_Primitives();
  setProperty(x, {b: 3, other}, 'a');
  identity(x.a.b);
  if (!cond) {
    x.a = null;
  }

  const y = [identity(cond) && x.a.b];
  return y;
}

export const FIXTURE_ENTRYPOINT = {
  fn: Component,
  params: [{cond: false}],
  sequentialRenders: [
    {cond: false},
    {cond: false},
    {cond: false, other: 8},
    {cond: true},
    {cond: true},
  ],
};

Subdomains

Functions

Dependencies

  • shared-runtime

Frequently Asked Questions

What does uncond-access-in-mutable-range.js do?
uncond-access-in-mutable-range.js is a source file in the react codebase, written in javascript. It belongs to the TestingUtilities domain, Fixtures subdomain.
What functions are defined in uncond-access-in-mutable-range.js?
uncond-access-in-mutable-range.js defines 1 function(s): Component.
What does uncond-access-in-mutable-range.js depend on?
uncond-access-in-mutable-range.js imports 1 module(s): shared-runtime.
Where is uncond-access-in-mutable-range.js in the architecture?
uncond-access-in-mutable-range.js is located at compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/reduce-reactive-deps/uncond-access-in-mutable-range.js (domain: TestingUtilities, subdomain: Fixtures, directory: compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/reduce-reactive-deps).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free