Home / Class/ GenerateEnum Class — drizzle-orm Architecture

GenerateEnum Class — drizzle-orm Architecture

Architecture documentation for the GenerateEnum class in Generators.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  f94f3361_4045_7148_4c94_32bfa357fbbf["GenerateEnum"]
  e5cee001_0354_7e76_ef0a_06dca71dc8ce["Generators.ts"]
  f94f3361_4045_7148_4c94_32bfa357fbbf -->|defined in| e5cee001_0354_7e76_ef0a_06dca71dc8ce
  15392977_5066_148e_847a_5ccc6e71a2a6["init()"]
  f94f3361_4045_7148_4c94_32bfa357fbbf -->|method| 15392977_5066_148e_847a_5ccc6e71a2a6
  0a7ca853_29cd_befc_bf01_1c334b76e769["generate()"]
  f94f3361_4045_7148_4c94_32bfa357fbbf -->|method| 0a7ca853_29cd_befc_bf01_1c334b76e769

Relationship Graph

Source Code

drizzle-seed/src/services/Generators.ts lines 1204–1225

export class GenerateEnum extends AbstractGenerator<{ enumValues: (string | number | boolean)[] }> {
	static override readonly entityKind: string = 'GenerateEnum';

	private state: {
		enumValuesGenerator: GenerateValuesFromArray;
	} | undefined;

	override init({ count, seed }: { count: number; seed: number }) {
		const { enumValues } = this.params;
		const enumValuesGenerator = new GenerateValuesFromArray({ values: enumValues });
		enumValuesGenerator.init({ count, seed });
		this.state = { enumValuesGenerator };
	}

	generate() {
		if (this.state === undefined) {
			throw new Error('state is not defined.');
		}
		// logic for this generator
		return this.state.enumValuesGenerator.generate();
	}
}

Domain

Frequently Asked Questions

What is the GenerateEnum class?
GenerateEnum is a class in the drizzle-orm codebase, defined in drizzle-seed/src/services/Generators.ts.
Where is GenerateEnum defined?
GenerateEnum is defined in drizzle-seed/src/services/Generators.ts at line 1204.

Analyze Your Own Codebase

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

Try Supermodel Free