Home / Class/ PgNumericBuilder Class — drizzle-orm Architecture

PgNumericBuilder Class — drizzle-orm Architecture

Architecture documentation for the PgNumericBuilder class in numeric.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  1960d326_2652_db9d_e052_40aac3f86dee["PgNumericBuilder"]
  b02d9686_b68f_1cdd_74bf_e7c79bb754fb["numeric.ts"]
  1960d326_2652_db9d_e052_40aac3f86dee -->|defined in| b02d9686_b68f_1cdd_74bf_e7c79bb754fb
  be1e26de_d446_4aa7_fb0f_8cf12524fc8f["constructor()"]
  1960d326_2652_db9d_e052_40aac3f86dee -->|method| be1e26de_d446_4aa7_fb0f_8cf12524fc8f
  10e36e6c_61cc_fa0a_648a_bd11ebc4b527["build()"]
  1960d326_2652_db9d_e052_40aac3f86dee -->|method| 10e36e6c_61cc_fa0a_648a_bd11ebc4b527

Relationship Graph

Source Code

drizzle-orm/src/pg-core/columns/numeric.ts lines 17–38

export class PgNumericBuilder<T extends ColumnBuilderBaseConfig<'string', 'PgNumeric'>> extends PgColumnBuilder<
	T,
	{
		precision: number | undefined;
		scale: number | undefined;
	}
> {
	static override readonly [entityKind]: string = 'PgNumericBuilder';

	constructor(name: T['name'], precision?: number, scale?: number) {
		super(name, 'string', 'PgNumeric');
		this.config.precision = precision;
		this.config.scale = scale;
	}

	/** @internal */
	override build<TTableName extends string>(
		table: AnyPgTable<{ name: TTableName }>,
	): PgNumeric<MakeColumnConfig<T, TTableName>> {
		return new PgNumeric<MakeColumnConfig<T, TTableName>>(table, this.config as ColumnBuilderRuntimeConfig<any, any>);
	}
}

Domain

Frequently Asked Questions

What is the PgNumericBuilder class?
PgNumericBuilder is a class in the drizzle-orm codebase, defined in drizzle-orm/src/pg-core/columns/numeric.ts.
Where is PgNumericBuilder defined?
PgNumericBuilder is defined in drizzle-orm/src/pg-core/columns/numeric.ts at line 17.

Analyze Your Own Codebase

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

Try Supermodel Free