Home / Function/ render() — react Function Reference

render() — react Function Reference

Architecture documentation for the render() function in InferMutationAliasingRanges.ts from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  a245d666_3ea2_209a_f47a_fe1e2c5a2577["render()"]
  78bdc9d3_b80e_c93f_98e8_83b50c1b2b77["AliasingState"]
  a245d666_3ea2_209a_f47a_fe1e2c5a2577 -->|defined in| 78bdc9d3_b80e_c93f_98e8_83b50c1b2b77
  f3815d1a_36a1_3e3d_92f2_dbbe88f01fe3["inferMutationAliasingRanges()"]
  f3815d1a_36a1_3e3d_92f2_dbbe88f01fe3 -->|calls| a245d666_3ea2_209a_f47a_fe1e2c5a2577
  f54dd966_4662_1205_ce47_174c3758a7ff["appendFunctionErrors()"]
  a245d666_3ea2_209a_f47a_fe1e2c5a2577 -->|calls| f54dd966_4662_1205_ce47_174c3758a7ff
  style a245d666_3ea2_209a_f47a_fe1e2c5a2577 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

compiler/packages/babel-plugin-react-compiler/src/Inference/InferMutationAliasingRanges.ts lines 663–698

  render(index: number, start: Identifier, errors: CompilerError): void {
    const seen = new Set<Identifier>();
    const queue: Array<Identifier> = [start];
    while (queue.length !== 0) {
      const current = queue.pop()!;
      if (seen.has(current)) {
        continue;
      }
      seen.add(current);
      const node = this.nodes.get(current);
      if (node == null || node.transitive != null || node.local != null) {
        continue;
      }
      if (node.value.kind === 'Function') {
        appendFunctionErrors(errors, node.value.function);
      }
      for (const [alias, when] of node.createdFrom) {
        if (when >= index) {
          continue;
        }
        queue.push(alias);
      }
      for (const [alias, when] of node.aliases) {
        if (when >= index) {
          continue;
        }
        queue.push(alias);
      }
      for (const [capture, when] of node.captures) {
        if (when >= index) {
          continue;
        }
        queue.push(capture);
      }
    }
  }

Domain

Subdomains

Frequently Asked Questions

What does render() do?
render() is a function in the react codebase, defined in compiler/packages/babel-plugin-react-compiler/src/Inference/InferMutationAliasingRanges.ts.
Where is render() defined?
render() is defined in compiler/packages/babel-plugin-react-compiler/src/Inference/InferMutationAliasingRanges.ts at line 663.
What does render() call?
render() calls 1 function(s): appendFunctionErrors.
What calls render()?
render() is called by 1 function(s): inferMutationAliasingRanges.

Analyze Your Own Codebase

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

Try Supermodel Free