Home / Function/ ensure() — svelte Function Reference

ensure() — svelte Function Reference

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

Entity Profile

Dependency Diagram

graph TD
  2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5["ensure()"]
  517c145b_769f_b163_6854_d8f2a4412e11["Batch"]
  2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5 -->|defined in| 517c145b_769f_b163_6854_d8f2a4412e11
  1faf4fc8_402e_578f_4e4f_7e097c01b149["pending()"]
  1faf4fc8_402e_578f_4e4f_7e097c01b149 -->|calls| 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5
  4eea2345_5d26_6ea8_43e3_80ca7101b747["error()"]
  4eea2345_5d26_6ea8_43e3_80ca7101b747 -->|calls| 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5
  8783b6d3_ff2d_7032_cf54_f6a71da85e37["ensure()"]
  8783b6d3_ff2d_7032_cf54_f6a71da85e37 -->|calls| 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5
  f618e317_1a72_981e_22c2_44b823813de7["flush_effects()"]
  f618e317_1a72_981e_22c2_44b823813de7 -->|calls| 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5
  a967b3b9_6263_60ec_74ff_b1889e66d284["fork()"]
  a967b3b9_6263_60ec_74ff_b1889e66d284 -->|calls| 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5
  cf74814c_38ff_1817_80eb_cbc1bb490472["effect_root()"]
  cf74814c_38ff_1817_80eb_cbc1bb490472 -->|calls| 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5
  0448eaeb_2934_f939_a81e_5b59a8c48202["component_root()"]
  0448eaeb_2934_f939_a81e_5b59a8c48202 -->|calls| 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5
  fc566ca0_2101_ea1a_cf42_44d2442cc526["internal_set()"]
  fc566ca0_2101_ea1a_cf42_44d2442cc526 -->|calls| 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5
  0f9cebc1_cf5c_448a_c5bf_4e539383e6c4["settled()"]
  0f9cebc1_cf5c_448a_c5bf_4e539383e6c4 -->|calls| 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5
  2cab0f64_6d19_d981_66e2_d2555c252702["queue_micro_task()"]
  2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5 -->|calls| 2cab0f64_6d19_d981_66e2_d2555c252702
  ec59c019_2fd3_2a1c_3cf5_7cd95b795a96["flush()"]
  2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5 -->|calls| ec59c019_2fd3_2a1c_3cf5_7cd95b795a96
  style 2ec0d2fd_8bbc_b2ba_53ae_f2da02bb3ba5 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/svelte/src/internal/client/reactivity/batch.js lines 516–534

	static ensure() {
		if (current_batch === null) {
			const batch = (current_batch = new Batch());
			batches.add(current_batch);

			if (!is_flushing_sync) {
				queue_micro_task(() => {
					if (current_batch !== batch) {
						// a flushSync happened in the meantime
						return;
					}

					batch.flush();
				});
			}
		}

		return current_batch;
	}

Domain

Subdomains

Frequently Asked Questions

What does ensure() do?
ensure() is a function in the svelte codebase, defined in packages/svelte/src/internal/client/reactivity/batch.js.
Where is ensure() defined?
ensure() is defined in packages/svelte/src/internal/client/reactivity/batch.js at line 516.
What does ensure() call?
ensure() calls 2 function(s): flush, queue_micro_task.
What calls ensure()?
ensure() is called by 9 function(s): component_root, effect_root, ensure, error, flush_effects, fork, internal_set, pending, and 1 more.

Analyze Your Own Codebase

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

Try Supermodel Free