Home / Function/ hasSingleExitReturnTerminal() — react Function Reference

hasSingleExitReturnTerminal() — react Function Reference

Architecture documentation for the hasSingleExitReturnTerminal() function in InlineImmediatelyInvokedFunctionExpressions.ts from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  34c49c57_7996_21d5_2be2_0c39ab90eb7b["hasSingleExitReturnTerminal()"]
  e96debd1_c62e_fa86_d259_20617c0dc175["InlineImmediatelyInvokedFunctionExpressions.ts"]
  34c49c57_7996_21d5_2be2_0c39ab90eb7b -->|defined in| e96debd1_c62e_fa86_d259_20617c0dc175
  d77babff_42d3_5fdf_4059_c0b9e7cfaeb0["inlineImmediatelyInvokedFunctionExpressions()"]
  d77babff_42d3_5fdf_4059_c0b9e7cfaeb0 -->|calls| 34c49c57_7996_21d5_2be2_0c39ab90eb7b
  style 34c49c57_7996_21d5_2be2_0c39ab90eb7b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

compiler/packages/babel-plugin-react-compiler/src/Inference/InlineImmediatelyInvokedFunctionExpressions.ts lines 267–277

function hasSingleExitReturnTerminal(fn: HIRFunction): boolean {
  let hasReturn = false;
  let exitCount = 0;
  for (const [, block] of fn.body.blocks) {
    if (block.terminal.kind === 'return' || block.terminal.kind === 'throw') {
      hasReturn ||= block.terminal.kind === 'return';
      exitCount++;
    }
  }
  return exitCount === 1 && hasReturn;
}

Domain

Subdomains

Frequently Asked Questions

What does hasSingleExitReturnTerminal() do?
hasSingleExitReturnTerminal() is a function in the react codebase, defined in compiler/packages/babel-plugin-react-compiler/src/Inference/InlineImmediatelyInvokedFunctionExpressions.ts.
Where is hasSingleExitReturnTerminal() defined?
hasSingleExitReturnTerminal() is defined in compiler/packages/babel-plugin-react-compiler/src/Inference/InlineImmediatelyInvokedFunctionExpressions.ts at line 267.
What calls hasSingleExitReturnTerminal()?
hasSingleExitReturnTerminal() is called by 1 function(s): inlineImmediatelyInvokedFunctionExpressions.

Analyze Your Own Codebase

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

Try Supermodel Free