Home / File/ repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js — react Source File

repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js — react Source File

Architecture documentation for repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.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
  1823ce6e_a616_5fb1_8c4a_ab8b8c258380["repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js"]
  006eec3d_77a9_4a47_e6c1_a96d7a6c9c05["shared-runtime"]
  1823ce6e_a616_5fb1_8c4a_ab8b8c258380 --> 006eec3d_77a9_4a47_e6c1_a96d7a6c9c05
  style 1823ce6e_a616_5fb1_8c4a_ab8b8c258380 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

// @enableNewMutationAliasingModel
import {identity, mutate} from 'shared-runtime';

/**
 * Fixed in the new inference model.
 *
 * Bug: copy of error.todo-object-expression-computed-key-modified-during-after-construction-sequence-expr
 * with the mutation hoisted to a named variable instead of being directly
 * inlined into the Object key.
 *
 * Found differences in evaluator results
 *   Non-forget (expected):
 *   (kind: ok) [{"[object Object]":[42]},{"wat0":"joe","wat1":"joe"}]
 *   [{"[object Object]":[42]},{"wat0":"joe","wat1":"joe"}]
 *   Forget:
 *   (kind: ok) [{"[object Object]":[42]},{"wat0":"joe","wat1":"joe"}]
 *   [{"[object Object]":[42]},{"wat0":"joe","wat1":"joe","wat2":"joe"}]
 */
function Component(props) {
  const key = {};
  const tmp = (mutate(key), key);
  const context = {
    // Here, `tmp` is frozen (as it's inferred to be a primitive/string)
    [tmp]: identity([props.value]),
  };
  mutate(key);
  return [context, key];
}

export const FIXTURE_ENTRYPOINT = {
  fn: Component,
  params: [{value: 42}],
  sequentialRenders: [{value: 42}, {value: 42}],
};

Subdomains

Functions

Dependencies

  • shared-runtime

Frequently Asked Questions

What does repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js do?
repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.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 repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js?
repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js defines 1 function(s): Component.
What does repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js depend on?
repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js imports 1 module(s): shared-runtime.
Where is repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js in the architecture?
repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js is located at compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.js (domain: TestingUtilities, subdomain: Fixtures, directory: compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler).

Analyze Your Own Codebase

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

Try Supermodel Free