Home / Function/ collectTemporariesSidemap() — react Function Reference

collectTemporariesSidemap() — react Function Reference

Architecture documentation for the collectTemporariesSidemap() function in ValidateNoRefAccessInRender.ts from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  66b35a0c_0f09_0ba4_f01e_4ff7c2bc1f63["collectTemporariesSidemap()"]
  8dbbe52d_b145_88fe_e0da_33d06180b558["ValidateNoRefAccessInRender.ts"]
  66b35a0c_0f09_0ba4_f01e_4ff7c2bc1f63 -->|defined in| 8dbbe52d_b145_88fe_e0da_33d06180b558
  184be6af_c134_eb6f_2164_724500e9cb16["validateNoRefAccessInRender()"]
  184be6af_c134_eb6f_2164_724500e9cb16 -->|calls| 66b35a0c_0f09_0ba4_f01e_4ff7c2bc1f63
  cc91bbf1_faca_3914_594f_24cffad498d7["lookup()"]
  66b35a0c_0f09_0ba4_f01e_4ff7c2bc1f63 -->|calls| cc91bbf1_faca_3914_594f_24cffad498d7
  a528e49e_203d_1992_f547_8d36686e5118["define()"]
  66b35a0c_0f09_0ba4_f01e_4ff7c2bc1f63 -->|calls| a528e49e_203d_1992_f547_8d36686e5118
  style 66b35a0c_0f09_0ba4_f01e_4ff7c2bc1f63 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

compiler/packages/babel-plugin-react-compiler/src/Validation/ValidateNoRefAccessInRender.ts lines 133–169

function collectTemporariesSidemap(fn: HIRFunction, env: Env): void {
  for (const block of fn.body.blocks.values()) {
    for (const instr of block.instructions) {
      const {lvalue, value} = instr;
      switch (value.kind) {
        case 'LoadLocal': {
          const temp = env.lookup(value.place);
          if (temp != null) {
            env.define(lvalue, temp);
          }
          break;
        }
        case 'StoreLocal': {
          const temp = env.lookup(value.value);
          if (temp != null) {
            env.define(lvalue, temp);
            env.define(value.lvalue.place, temp);
          }
          break;
        }
        case 'PropertyLoad': {
          if (
            isUseRefType(value.object.identifier) &&
            value.property === 'current'
          ) {
            continue;
          }
          const temp = env.lookup(value.object);
          if (temp != null) {
            env.define(lvalue, temp);
          }
          break;
        }
      }
    }
  }
}

Domain

Subdomains

Frequently Asked Questions

What does collectTemporariesSidemap() do?
collectTemporariesSidemap() is a function in the react codebase, defined in compiler/packages/babel-plugin-react-compiler/src/Validation/ValidateNoRefAccessInRender.ts.
Where is collectTemporariesSidemap() defined?
collectTemporariesSidemap() is defined in compiler/packages/babel-plugin-react-compiler/src/Validation/ValidateNoRefAccessInRender.ts at line 133.
What does collectTemporariesSidemap() call?
collectTemporariesSidemap() calls 2 function(s): define, lookup.
What calls collectTemporariesSidemap()?
collectTemporariesSidemap() is called by 1 function(s): validateNoRefAccessInRender.

Analyze Your Own Codebase

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

Try Supermodel Free