Home / Class/ PgVectorBuilder Class — drizzle-orm Architecture

PgVectorBuilder Class — drizzle-orm Architecture

Architecture documentation for the PgVectorBuilder class in vector.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  24cabd31_d156_92e0_3cc0_6aa76a13b0d2["PgVectorBuilder"]
  9ce71e3e_4724_d5ff_7d18_e5e4ce850b18["vector.ts"]
  24cabd31_d156_92e0_3cc0_6aa76a13b0d2 -->|defined in| 9ce71e3e_4724_d5ff_7d18_e5e4ce850b18
  092ce5bd_78be_b0c0_714f_c397e6caebe2["constructor()"]
  24cabd31_d156_92e0_3cc0_6aa76a13b0d2 -->|method| 092ce5bd_78be_b0c0_714f_c397e6caebe2
  18eeb2e5_0c1e_6d22_49d3_696216d083d2["build()"]
  24cabd31_d156_92e0_3cc0_6aa76a13b0d2 -->|method| 18eeb2e5_0c1e_6d22_49d3_696216d083d2

Relationship Graph

Source Code

drizzle-orm/src/pg-core/columns/vector_extension/vector.ts lines 18–41

export class PgVectorBuilder<T extends ColumnBuilderBaseConfig<'array', 'PgVector'> & { dimensions: number }>
	extends PgColumnBuilder<
		T,
		{ dimensions: T['dimensions'] },
		{ dimensions: T['dimensions'] }
	>
{
	static override readonly [entityKind]: string = 'PgVectorBuilder';

	constructor(name: string, config: PgVectorConfig<T['dimensions']>) {
		super(name, 'array', 'PgVector');
		this.config.dimensions = config.dimensions;
	}

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

Domain

Frequently Asked Questions

What is the PgVectorBuilder class?
PgVectorBuilder is a class in the drizzle-orm codebase, defined in drizzle-orm/src/pg-core/columns/vector_extension/vector.ts.
Where is PgVectorBuilder defined?
PgVectorBuilder is defined in drizzle-orm/src/pg-core/columns/vector_extension/vector.ts at line 18.

Analyze Your Own Codebase

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

Try Supermodel Free