Home / Function/ generate() — drizzle-orm Function Reference

generate() — drizzle-orm Function Reference

Architecture documentation for the generate() function in Generators.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  fc0bcf81_b23c_cf17_c1e2_83da990b111e["generate()"]
  1054b61b_b48b_edf5_f7d5_53582dab5417["GenerateUniqueStreetAddress"]
  fc0bcf81_b23c_cf17_c1e2_83da990b111e -->|defined in| 1054b61b_b48b_edf5_f7d5_53582dab5417
  2d30e7dc_1674_cb54_a3c4_d833d08298ce["fastCartesianProduct()"]
  fc0bcf81_b23c_cf17_c1e2_83da990b111e -->|calls| 2d30e7dc_1674_cb54_a3c4_d833d08298ce
  b796adef_dfbc_ebaa_ea14_31e6339b630a["fillTemplate()"]
  fc0bcf81_b23c_cf17_c1e2_83da990b111e -->|calls| b796adef_dfbc_ebaa_ea14_31e6339b630a
  style fc0bcf81_b23c_cf17_c1e2_83da990b111e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

drizzle-seed/src/services/Generators.ts lines 2308–2334

	generate() {
		if (this.state === undefined) {
			throw new Error('state is not defined.');
		}

		let streetNameObjIdx;
		[streetNameObjIdx, this.state.rng] = prand.uniformIntDistribution(
			0,
			this.state.possStreetNameObjs.length - 1,
			this.state.rng,
		);
		const streetNameObj = this.state.possStreetNameObjs[streetNameObjIdx]!;

		const idx = streetNameObj.indicesGen.generate() as number;
		const values = fastCartesianProduct(streetNameObj.arraysToChooseFrom, idx) as string[];

		streetNameObj.count += 1;
		if (streetNameObj.count === streetNameObj.maxUniqueStreetNamesNumber) {
			this.state.possStreetNameObjs[streetNameObjIdx] = this.state
				.possStreetNameObjs.at(-1)!;
			this.state.possStreetNameObjs.pop();
		}

		const streetName = fillTemplate({ template: '# # #', values, placeholdersCount: 3 });

		return streetName;
	}

Domain

Subdomains

Frequently Asked Questions

What does generate() do?
generate() is a function in the drizzle-orm codebase, defined in drizzle-seed/src/services/Generators.ts.
Where is generate() defined?
generate() is defined in drizzle-seed/src/services/Generators.ts at line 2308.
What does generate() call?
generate() calls 2 function(s): fastCartesianProduct, fillTemplate.

Analyze Your Own Codebase

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

Try Supermodel Free