collectDepUsages() — react Function Reference
Architecture documentation for the collectDepUsages() function in InferEffectDependencies.ts from the react codebase.
Entity Profile
Dependency Diagram
graph TD 9851361f_9c96_24d6_e407_3d4f7245f8ea["collectDepUsages()"] 3393f920_76eb_7dd5_b95f_ab92de6cecce["InferEffectDependencies.ts"] 9851361f_9c96_24d6_e407_3d4f7245f8ea -->|defined in| 3393f920_76eb_7dd5_b95f_ab92de6cecce 3522f83b_2dff_3c9f_920f_3e428eb62b31["inferEffectDependencies()"] 3522f83b_2dff_3c9f_920f_3e428eb62b31 -->|calls| 9851361f_9c96_24d6_e407_3d4f7245f8ea ccace1c3_85b7_a05e_c2a5_7eff8b3422ed["eachInstructionOperand()"] 9851361f_9c96_24d6_e407_3d4f7245f8ea -->|calls| ccace1c3_85b7_a05e_c2a5_7eff8b3422ed 358cdfdf_e03f_e4de_133c_5b70e0a98d45["push()"] 9851361f_9c96_24d6_e407_3d4f7245f8ea -->|calls| 358cdfdf_e03f_e4de_133c_5b70e0a98d45 style 9851361f_9c96_24d6_e407_3d4f7245f8ea fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
compiler/packages/babel-plugin-react-compiler/src/Inference/InferEffectDependencies.ts lines 517–546
function collectDepUsages(
deps: Array<ReactiveScopeDependency>,
fnExpr: FunctionExpression,
): Array<SourceLocation> {
const identifiers: Map<IdentifierId, ReactiveScopeDependency> = new Map();
const loadedDeps: Set<IdentifierId> = new Set();
const sourceLocations = [];
for (const dep of deps) {
identifiers.set(dep.identifier.id, dep);
}
for (const [, block] of fnExpr.loweredFunc.func.body.blocks) {
for (const instr of block.instructions) {
if (
instr.value.kind === 'LoadLocal' &&
identifiers.has(instr.value.place.identifier.id)
) {
loadedDeps.add(instr.lvalue.identifier.id);
}
for (const place of eachInstructionOperand(instr)) {
if (loadedDeps.has(place.identifier.id)) {
// TODO(@jbrown215): handle member exprs!!
sourceLocations.push(place.identifier.loc);
}
}
}
}
return sourceLocations;
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does collectDepUsages() do?
collectDepUsages() is a function in the react codebase, defined in compiler/packages/babel-plugin-react-compiler/src/Inference/InferEffectDependencies.ts.
Where is collectDepUsages() defined?
collectDepUsages() is defined in compiler/packages/babel-plugin-react-compiler/src/Inference/InferEffectDependencies.ts at line 517.
What does collectDepUsages() call?
collectDepUsages() calls 2 function(s): eachInstructionOperand, push.
What calls collectDepUsages()?
collectDepUsages() is called by 1 function(s): inferEffectDependencies.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free