Home / Function/ is_reactive_expression() — svelte Function Reference

is_reactive_expression() — svelte Function Reference

Architecture documentation for the is_reactive_expression() function in AwaitExpression.js from the svelte codebase.

Entity Profile

Dependency Diagram

graph TD
  5e732e1e_1b77_e0f7_fe3b_d9981bd8ce48["is_reactive_expression()"]
  c9c24023_1004_2023_0ff3_88c290127328["AwaitExpression.js"]
  5e732e1e_1b77_e0f7_fe3b_d9981bd8ce48 -->|defined in| c9c24023_1004_2023_0ff3_88c290127328
  8faf0d70_7e56_5e11_3d46_3702b9634650["AwaitExpression()"]
  8faf0d70_7e56_5e11_3d46_3702b9634650 -->|calls| 5e732e1e_1b77_e0f7_fe3b_d9981bd8ce48
  style 5e732e1e_1b77_e0f7_fe3b_d9981bd8ce48 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/svelte/src/compiler/phases/2-analyze/visitors/AwaitExpression.js lines 51–75

export function is_reactive_expression(path, in_derived) {
	if (in_derived) return true;

	let i = path.length;

	while (i--) {
		const parent = path[i];

		if (
			parent.type === 'ArrowFunctionExpression' ||
			parent.type === 'FunctionExpression' ||
			parent.type === 'FunctionDeclaration'
		) {
			// No reactive expression found between function and await
			return false;
		}

		// @ts-expect-error we could probably use a neater/more robust mechanism
		if (parent.metadata) {
			return true;
		}
	}

	return false;
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does is_reactive_expression() do?
is_reactive_expression() is a function in the svelte codebase, defined in packages/svelte/src/compiler/phases/2-analyze/visitors/AwaitExpression.js.
Where is is_reactive_expression() defined?
is_reactive_expression() is defined in packages/svelte/src/compiler/phases/2-analyze/visitors/AwaitExpression.js at line 51.
What calls is_reactive_expression()?
is_reactive_expression() is called by 1 function(s): AwaitExpression.

Analyze Your Own Codebase

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

Try Supermodel Free