Home / Function/ enableMemoization() — react Function Reference

enableMemoization() — react Function Reference

Architecture documentation for the enableMemoization() function in Environment.ts from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  0effb24b_fd6b_177a_a58f_284356ae70b8["enableMemoization()"]
  cba0c8a2_0db5_48e2_0d19_b2c6a46799e8["Environment"]
  0effb24b_fd6b_177a_a58f_284356ae70b8 -->|defined in| cba0c8a2_0db5_48e2_0d19_b2c6a46799e8
  d7fde76c_4fd9_feb3_299b_798689f05bc6["assertExhaustive()"]
  0effb24b_fd6b_177a_a58f_284356ae70b8 -->|calls| d7fde76c_4fd9_feb3_299b_798689f05bc6
  style 0effb24b_fd6b_177a_a58f_284356ae70b8 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

compiler/packages/babel-plugin-react-compiler/src/HIR/Environment.ts lines 890–908

  get enableMemoization(): boolean {
    switch (this.outputMode) {
      case 'client':
      case 'lint': {
        // linting also enables memoization so that we can check if manual memoization is preserved
        return true;
      }
      case 'ssr':
      case 'client-no-memo': {
        return false;
      }
      default: {
        assertExhaustive(
          this.outputMode,
          `Unexpected output mode '${this.outputMode}'`,
        );
      }
    }
  }

Subdomains

Frequently Asked Questions

What does enableMemoization() do?
enableMemoization() is a function in the react codebase, defined in compiler/packages/babel-plugin-react-compiler/src/HIR/Environment.ts.
Where is enableMemoization() defined?
enableMemoization() is defined in compiler/packages/babel-plugin-react-compiler/src/HIR/Environment.ts at line 890.
What does enableMemoization() call?
enableMemoization() calls 1 function(s): assertExhaustive.

Analyze Your Own Codebase

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

Try Supermodel Free