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
Defined In
Called By
Source
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