Home / Function/ createHookGuard() — react Function Reference

createHookGuard() — react Function Reference

Architecture documentation for the createHookGuard() function in CodegenReactiveFunction.ts from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  d0ed8568_2850_9a95_ed1a_3c9e915252da["createHookGuard()"]
  dc7f10c2_c914_a162_d02b_a10a15c64a5f["CodegenReactiveFunction.ts"]
  d0ed8568_2850_9a95_ed1a_3c9e915252da -->|defined in| dc7f10c2_c914_a162_d02b_a10a15c64a5f
  33e8ddc7_2075_1da1_7e05_66d1f4c34a3c["codegenFunction()"]
  33e8ddc7_2075_1da1_7e05_66d1f4c34a3c -->|calls| d0ed8568_2850_9a95_ed1a_3c9e915252da
  8b08b5b0_dece_e091_e968_4abdcd51cf05["createCallExpression()"]
  8b08b5b0_dece_e091_e968_4abdcd51cf05 -->|calls| d0ed8568_2850_9a95_ed1a_3c9e915252da
  style d0ed8568_2850_9a95_ed1a_3c9e915252da fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

compiler/packages/babel-plugin-react-compiler/src/ReactiveScopes/CodegenReactiveFunction.ts lines 1575–1594

function createHookGuard(
  guard: ExternalFunction,
  context: ProgramContext,
  stmts: Array<t.Statement>,
  before: GuardKind,
  after: GuardKind,
): t.TryStatement {
  const guardFnName = context.addImportSpecifier(guard).name;
  function createHookGuardImpl(kind: number): t.ExpressionStatement {
    return t.expressionStatement(
      t.callExpression(t.identifier(guardFnName), [t.numericLiteral(kind)]),
    );
  }

  return t.tryStatement(
    t.blockStatement([createHookGuardImpl(before), ...stmts]),
    null,
    t.blockStatement([createHookGuardImpl(after)]),
  );
}

Domain

Subdomains

Frequently Asked Questions

What does createHookGuard() do?
createHookGuard() is a function in the react codebase, defined in compiler/packages/babel-plugin-react-compiler/src/ReactiveScopes/CodegenReactiveFunction.ts.
Where is createHookGuard() defined?
createHookGuard() is defined in compiler/packages/babel-plugin-react-compiler/src/ReactiveScopes/CodegenReactiveFunction.ts at line 1575.
What calls createHookGuard()?
createHookGuard() is called by 2 function(s): codegenFunction, createCallExpression.

Analyze Your Own Codebase

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

Try Supermodel Free