Home / Function/ simplifyVariableDeclarations() — react Function Reference

simplifyVariableDeclarations() — react Function Reference

Architecture documentation for the simplifyVariableDeclarations() function in minimize.ts from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  57348ef7_9731_f988_7f9b_0b1eb9191c57["simplifyVariableDeclarations()"]
  9c061da8_dbf8_4168_823d_991654a3c55d["minimize.ts"]
  57348ef7_9731_f988_7f9b_0b1eb9191c57 -->|defined in| 9c061da8_dbf8_4168_823d_991654a3c55d
  7a9af496_ef6a_d9e8_8eaf_1f386f49e4b3["cloneAst()"]
  57348ef7_9731_f988_7f9b_0b1eb9191c57 -->|calls| 7a9af496_ef6a_d9e8_8eaf_1f386f49e4b3
  style 57348ef7_9731_f988_7f9b_0b1eb9191c57 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

compiler/packages/snap/src/minimize.ts lines 1143–1184

function* simplifyVariableDeclarations(ast: t.File): Generator<t.File> {
  // Collect all variable declarators with init expressions (excluding const)
  const declaratorSites: Array<{declIndex: number}> = [];
  let declIndex = 0;
  t.traverseFast(ast, node => {
    if (t.isVariableDeclaration(node) && node.kind !== 'const') {
      for (const declarator of node.declarations) {
        if (declarator.init) {
          declaratorSites.push({declIndex});
          declIndex++;
        }
      }
    }
  });

  // Try removing init from each declarator
  for (const {declIndex: targetDeclIdx} of declaratorSites) {
    const cloned = cloneAst(ast);
    let idx = 0;
    let modified = false;

    t.traverseFast(cloned, node => {
      if (modified) return;
      if (t.isVariableDeclaration(node) && node.kind !== 'const') {
        for (const declarator of node.declarations) {
          if (declarator.init) {
            if (idx === targetDeclIdx) {
              declarator.init = null;
              modified = true;
              return;
            }
            idx++;
          }
        }
      }
    });

    if (modified) {
      yield cloned;
    }
  }
}

Domain

Subdomains

Calls

Frequently Asked Questions

What does simplifyVariableDeclarations() do?
simplifyVariableDeclarations() is a function in the react codebase, defined in compiler/packages/snap/src/minimize.ts.
Where is simplifyVariableDeclarations() defined?
simplifyVariableDeclarations() is defined in compiler/packages/snap/src/minimize.ts at line 1143.
What does simplifyVariableDeclarations() call?
simplifyVariableDeclarations() calls 1 function(s): cloneAst.

Analyze Your Own Codebase

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

Try Supermodel Free