Home / Function/ runSprout() — react Function Reference

runSprout() — react Function Reference

Architecture documentation for the runSprout() function in index.ts from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  81e68010_37f1_e748_b452_7cc28e601cad["runSprout()"]
  f8b6e051_0f7f_6e15_4727_f99783e05cbb["index.ts"]
  81e68010_37f1_e748_b452_7cc28e601cad -->|defined in| f8b6e051_0f7f_6e15_4727_f99783e05cbb
  5e39198b_b086_5261_de7a_7fc49349ecb6["transformFixture()"]
  5e39198b_b086_5261_de7a_7fc49349ecb6 -->|calls| 81e68010_37f1_e748_b452_7cc28e601cad
  c8090524_9cfa_099d_cf1f_dcf1a93439f8["doEval()"]
  81e68010_37f1_e748_b452_7cc28e601cad -->|calls| c8090524_9cfa_099d_cf1f_dcf1a93439f8
  c1e7b8c4_fb1e_c06e_5f2e_3d66c8d3efc6["makeError()"]
  81e68010_37f1_e748_b452_7cc28e601cad -->|calls| c1e7b8c4_fb1e_c06e_5f2e_3d66c8d3efc6
  5e85abba_b89a_5303_5587_855acb8c1502["logsEqual()"]
  81e68010_37f1_e748_b452_7cc28e601cad -->|calls| 5e85abba_b89a_5303_5587_855acb8c1502
  455ee373_494c_ad7a_2814_7286eee7a666["stringify()"]
  81e68010_37f1_e748_b452_7cc28e601cad -->|calls| 455ee373_494c_ad7a_2814_7286eee7a666
  style 81e68010_37f1_e748_b452_7cc28e601cad fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

compiler/packages/snap/src/sprout/index.ts lines 31–74

export function runSprout(
  originalCode: string,
  forgetCode: string,
): SproutResult {
  let forgetResult;
  try {
    (globalThis as any).__SNAP_EVALUATOR_MODE = 'forget';
    forgetResult = doEval(forgetCode);
  } catch (e) {
    throw e;
  } finally {
    (globalThis as any).__SNAP_EVALUATOR_MODE = undefined;
  }
  if (forgetResult.kind === 'UnexpectedError') {
    return makeError('Unexpected error in Forget runner', forgetResult.value);
  }
  if (originalCode.indexOf('@disableNonForgetInSprout') === -1) {
    const nonForgetResult = doEval(originalCode);

    if (nonForgetResult.kind === 'UnexpectedError') {
      return makeError(
        'Unexpected error in non-forget runner',
        nonForgetResult.value,
      );
    } else if (
      forgetResult.kind !== nonForgetResult.kind ||
      forgetResult.value !== nonForgetResult.value ||
      !logsEqual(forgetResult.logs, nonForgetResult.logs)
    ) {
      return makeError(
        'Found differences in evaluator results',
        `Non-forget (expected):
${stringify(nonForgetResult)}
Forget:
${stringify(forgetResult)}
`,
      );
    }
  }
  return {
    kind: 'success',
    value: stringify(forgetResult),
  };
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does runSprout() do?
runSprout() is a function in the react codebase, defined in compiler/packages/snap/src/sprout/index.ts.
Where is runSprout() defined?
runSprout() is defined in compiler/packages/snap/src/sprout/index.ts at line 31.
What does runSprout() call?
runSprout() calls 4 function(s): doEval, logsEqual, makeError, stringify.
What calls runSprout()?
runSprout() is called by 1 function(s): transformFixture.

Analyze Your Own Codebase

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

Try Supermodel Free