Home / Function/ buildSignatureFromFunctionExpression() — react Function Reference

buildSignatureFromFunctionExpression() — react Function Reference

Architecture documentation for the buildSignatureFromFunctionExpression() function in InferMutationAliasingEffects.ts from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  2dd4869d_1f08_05d3_2645_bd8e186bc5db["buildSignatureFromFunctionExpression()"]
  d24875c3_c045_4414_2cc9_16f96d59c629["InferMutationAliasingEffects.ts"]
  2dd4869d_1f08_05d3_2645_bd8e186bc5db -->|defined in| d24875c3_c045_4414_2cc9_16f96d59c629
  7cb90dd3_dbe0_0087_670d_277ddeadabfc["applyEffect()"]
  7cb90dd3_dbe0_0087_670d_277ddeadabfc -->|calls| 2dd4869d_1f08_05d3_2645_bd8e186bc5db
  49446ae1_b830_9411_8258_1139d21b314b["createTemporaryPlace()"]
  2dd4869d_1f08_05d3_2645_bd8e186bc5db -->|calls| 49446ae1_b830_9411_8258_1139d21b314b
  53244187_914c_cc90_5880_7bfc1fc9c0bb["push()"]
  2dd4869d_1f08_05d3_2645_bd8e186bc5db -->|calls| 53244187_914c_cc90_5880_7bfc1fc9c0bb
  style 2dd4869d_1f08_05d3_2645_bd8e186bc5db fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

compiler/packages/babel-plugin-react-compiler/src/Inference/InferMutationAliasingEffects.ts lines 2758–2779

function buildSignatureFromFunctionExpression(
  env: Environment,
  fn: FunctionExpression,
): AliasingSignature {
  let rest: IdentifierId | null = null;
  const params: Array<IdentifierId> = [];
  for (const param of fn.loweredFunc.func.params) {
    if (param.kind === 'Identifier') {
      params.push(param.identifier.id);
    } else {
      rest = param.place.identifier.id;
    }
  }
  return {
    receiver: makeIdentifierId(0),
    params,
    rest: rest ?? createTemporaryPlace(env, fn.loc).identifier.id,
    returns: fn.loweredFunc.func.returns.identifier.id,
    effects: fn.loweredFunc.func.aliasingEffects ?? [],
    temporaries: [],
  };
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does buildSignatureFromFunctionExpression() do?
buildSignatureFromFunctionExpression() is a function in the react codebase, defined in compiler/packages/babel-plugin-react-compiler/src/Inference/InferMutationAliasingEffects.ts.
Where is buildSignatureFromFunctionExpression() defined?
buildSignatureFromFunctionExpression() is defined in compiler/packages/babel-plugin-react-compiler/src/Inference/InferMutationAliasingEffects.ts at line 2758.
What does buildSignatureFromFunctionExpression() call?
buildSignatureFromFunctionExpression() calls 2 function(s): createTemporaryPlace, push.
What calls buildSignatureFromFunctionExpression()?
buildSignatureFromFunctionExpression() is called by 1 function(s): applyEffect.

Analyze Your Own Codebase

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

Try Supermodel Free