Home / Function/ generate() — svelte Function Reference

generate() — svelte Function Reference

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

Function javascript Compiler Transformer calls 1 called by 9

Entity Profile

Dependency Diagram

graph TD
  8980dd2b_1c7a_2c03_2400_e31c60358534["generate()"]
  36ef071d_b929_6d90_0038_9f22de99efbe["Scope"]
  8980dd2b_1c7a_2c03_2400_e31c60358534 -->|defined in| 36ef071d_b929_6d90_0038_9f22de99efbe
  62ad8229_4df7_36d3_2573_07196839bb69["handle_identifier()"]
  62ad8229_4df7_36d3_2573_07196839bb69 -->|calls| 8980dd2b_1c7a_2c03_2400_e31c60358534
  8f93b8d1_a873_5c72_eae3_de296245116a["instance_script.VariableDeclaration()"]
  8f93b8d1_a873_5c72_eae3_de296245116a -->|calls| 8980dd2b_1c7a_2c03_2400_e31c60358534
  7c4b9e22_124a_58a4_bd27_fe6e869ae9b4["template.SvelteComponent()"]
  7c4b9e22_124a_58a4_bd27_fe6e869ae9b4 -->|calls| 8980dd2b_1c7a_2c03_2400_e31c60358534
  75841e11_8cd1_4c07_bd42_ece901a4a83a["template.SlotElement()"]
  75841e11_8cd1_4c07_bd42_ece901a4a83a -->|calls| 8980dd2b_1c7a_2c03_2400_e31c60358534
  78a6ba9a_5003_f569_a638_76e4f1977809["analyze_component()"]
  78a6ba9a_5003_f569_a638_76e4f1977809 -->|calls| 8980dd2b_1c7a_2c03_2400_e31c60358534
  dbadea0c_9bb0_dd96_41bd_09a33169352f["VariableDeclaration()"]
  dbadea0c_9bb0_dd96_41bd_09a33169352f -->|calls| 8980dd2b_1c7a_2c03_2400_e31c60358534
  887ad0a0_32ea_f4c0_1d78_fe0a6641e266["create_state_declarators()"]
  887ad0a0_32ea_f4c0_1d78_fe0a6641e266 -->|calls| 8980dd2b_1c7a_2c03_2400_e31c60358534
  007c3954_38c0_485d_f93d_2da7aa34f6bc["VariableDeclaration()"]
  007c3954_38c0_485d_f93d_2da7aa34f6bc -->|calls| 8980dd2b_1c7a_2c03_2400_e31c60358534
  1adb4ea4_d32e_0d06_3e3c_e359665c6f64["create_state_declarators()"]
  1adb4ea4_d32e_0d06_3e3c_e359665c6f64 -->|calls| 8980dd2b_1c7a_2c03_2400_e31c60358534
  a53788f3_4288_6c23_bd50_e754a22ca567["is_reserved()"]
  8980dd2b_1c7a_2c03_2400_e31c60358534 -->|calls| a53788f3_4288_6c23_bd50_e754a22ca567
  style 8980dd2b_1c7a_2c03_2400_e31c60358534 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/svelte/src/compiler/phases/scope.js lines 704–725

	generate(preferred_name) {
		if (this.#porous) {
			return /** @type {Scope} */ (this.parent).generate(preferred_name);
		}

		preferred_name = preferred_name.replace(/[^a-zA-Z0-9_$]/g, '_').replace(/^[0-9]/, '_');
		let name = preferred_name;
		let n = 1;

		while (
			this.references.has(name) ||
			this.declarations.has(name) ||
			this.root.conflicts.has(name) ||
			is_reserved(name)
		) {
			name = `${preferred_name}_${n++}`;
		}

		this.references.set(name, []);
		this.root.conflicts.add(name);
		return name;
	}

Domain

Subdomains

Frequently Asked Questions

What does generate() do?
generate() is a function in the svelte codebase, defined in packages/svelte/src/compiler/phases/scope.js.
Where is generate() defined?
generate() is defined in packages/svelte/src/compiler/phases/scope.js at line 704.
What does generate() call?
generate() calls 1 function(s): is_reserved.
What calls generate()?
generate() is called by 9 function(s): VariableDeclaration, VariableDeclaration, analyze_component, create_state_declarators, create_state_declarators, handle_identifier, instance_script.VariableDeclaration, template.SlotElement, and 1 more.

Analyze Your Own Codebase

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

Try Supermodel Free