Home / Function/ AssignmentExpression() — svelte Function Reference

AssignmentExpression() — svelte Function Reference

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

Function javascript Compiler Transformer calls 3 called by 1

Entity Profile

Dependency Diagram

graph TD
  d33c6b94_58e2_ebb4_1c33_58fa9af1535d["AssignmentExpression()"]
  17a1befc_da6e_74db_4a59_7e1534b65053["AssignmentExpression.js"]
  d33c6b94_58e2_ebb4_1c33_58fa9af1535d -->|defined in| 17a1befc_da6e_74db_4a59_7e1534b65053
  aced5321_4478_4f67_ba8c_e122713c1d9f["calculate_blockers()"]
  aced5321_4478_4f67_ba8c_e122713c1d9f -->|calls| d33c6b94_58e2_ebb4_1c33_58fa9af1535d
  5ebdf508_43c0_4c5b_b633_950058ffd709["validate_assignment()"]
  d33c6b94_58e2_ebb4_1c33_58fa9af1535d -->|calls| 5ebdf508_43c0_4c5b_b633_950058ffd709
  804afe56_25d1_9f41_dafe_adc75e952134["object()"]
  d33c6b94_58e2_ebb4_1c33_58fa9af1535d -->|calls| 804afe56_25d1_9f41_dafe_adc75e952134
  c12e0147_3f27_cf17_5878_e54ffdc328d5["extract_identifiers()"]
  d33c6b94_58e2_ebb4_1c33_58fa9af1535d -->|calls| c12e0147_3f27_cf17_5878_e54ffdc328d5
  style d33c6b94_58e2_ebb4_1c33_58fa9af1535d fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/svelte/src/compiler/phases/2-analyze/visitors/AssignmentExpression.js lines 10–31

export function AssignmentExpression(node, context) {
	validate_assignment(node, node.left, context);

	if (context.state.reactive_statement) {
		const id = node.left.type === 'MemberExpression' ? object(node.left) : node.left;
		if (id !== null) {
			for (const id of extract_identifiers(node.left)) {
				const binding = context.state.scope.get(id.name);

				if (binding) {
					context.state.reactive_statement.assignments.add(binding);
				}
			}
		}
	}

	if (context.state.expression) {
		context.state.expression.has_assignment = true;
	}

	context.next();
}

Domain

Subdomains

Frequently Asked Questions

What does AssignmentExpression() do?
AssignmentExpression() is a function in the svelte codebase, defined in packages/svelte/src/compiler/phases/2-analyze/visitors/AssignmentExpression.js.
Where is AssignmentExpression() defined?
AssignmentExpression() is defined in packages/svelte/src/compiler/phases/2-analyze/visitors/AssignmentExpression.js at line 10.
What does AssignmentExpression() call?
AssignmentExpression() calls 3 function(s): extract_identifiers, object, validate_assignment.
What calls AssignmentExpression()?
AssignmentExpression() is called by 1 function(s): calculate_blockers.

Analyze Your Own Codebase

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

Try Supermodel Free