Home / Function/ defer_effect() — svelte Function Reference

defer_effect() — svelte Function Reference

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

Entity Profile

Dependency Diagram

graph TD
  5cf0e011_b627_b109_ccf7_5cb23fa00b51["defer_effect()"]
  5a859a0f_eee2_e7f4_f1cd_3c52fb468bd4["utils.js"]
  5cf0e011_b627_b109_ccf7_5cb23fa00b51 -->|defined in| 5a859a0f_eee2_e7f4_f1cd_3c52fb468bd4
  0236aae6_dc9d_5d2d_7cf3_97ace8d7d068["defer_effect()"]
  0236aae6_dc9d_5d2d_7cf3_97ace8d7d068 -->|calls| 5cf0e011_b627_b109_ccf7_5cb23fa00b51
  c19ea0c4_0909_9915_ac53_f65d5af69919["root()"]
  c19ea0c4_0909_9915_ac53_f65d5af69919 -->|calls| 5cf0e011_b627_b109_ccf7_5cb23fa00b51
  9ff5deaa_0417_faaf_da92_5b566dc2b490["effects()"]
  9ff5deaa_0417_faaf_da92_5b566dc2b490 -->|calls| 5cf0e011_b627_b109_ccf7_5cb23fa00b51
  2a48ae97_613d_b8ae_a42a_fac2ad5c36d7["clear_marked()"]
  5cf0e011_b627_b109_ccf7_5cb23fa00b51 -->|calls| 2a48ae97_613d_b8ae_a42a_fac2ad5c36d7
  6479f832_c1d7_7636_b658_b3f9c70d9af0["set_signal_status()"]
  5cf0e011_b627_b109_ccf7_5cb23fa00b51 -->|calls| 6479f832_c1d7_7636_b658_b3f9c70d9af0
  style 5cf0e011_b627_b109_ccf7_5cb23fa00b51 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/svelte/src/internal/client/reactivity/utils.js lines 27–40

export function defer_effect(effect, dirty_effects, maybe_dirty_effects) {
	if ((effect.f & DIRTY) !== 0) {
		dirty_effects.add(effect);
	} else if ((effect.f & MAYBE_DIRTY) !== 0) {
		maybe_dirty_effects.add(effect);
	}

	// Since we're not executing these effects now, we need to clear any WAS_MARKED flags
	// so that other batches can correctly reach these effects during their own traversal
	clear_marked(effect.deps);

	// mark as clean so they get scheduled if they depend on pending async state
	set_signal_status(effect, CLEAN);
}

Domain

Subdomains

Frequently Asked Questions

What does defer_effect() do?
defer_effect() is a function in the svelte codebase, defined in packages/svelte/src/internal/client/reactivity/utils.js.
Where is defer_effect() defined?
defer_effect() is defined in packages/svelte/src/internal/client/reactivity/utils.js at line 27.
What does defer_effect() call?
defer_effect() calls 2 function(s): clear_marked, set_signal_status.
What calls defer_effect()?
defer_effect() is called by 3 function(s): defer_effect, effects, root.

Analyze Your Own Codebase

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

Try Supermodel Free