Home / Class/ PgHalfVectorBuilder Class — drizzle-orm Architecture

PgHalfVectorBuilder Class — drizzle-orm Architecture

Architecture documentation for the PgHalfVectorBuilder class in halfvec.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  3cfb75e4_ab91_c7c7_b718_3e172c3b5e51["PgHalfVectorBuilder"]
  c85824cf_6363_9a74_fc67_e52ab4f0baae["halfvec.ts"]
  3cfb75e4_ab91_c7c7_b718_3e172c3b5e51 -->|defined in| c85824cf_6363_9a74_fc67_e52ab4f0baae
  616d7ad4_c105_4173_8073_d1d5f0d922fd["constructor()"]
  3cfb75e4_ab91_c7c7_b718_3e172c3b5e51 -->|method| 616d7ad4_c105_4173_8073_d1d5f0d922fd
  afd7bc40_37f9_62ea_9242_9c7e2b87ecf6["build()"]
  3cfb75e4_ab91_c7c7_b718_3e172c3b5e51 -->|method| afd7bc40_37f9_62ea_9242_9c7e2b87ecf6

Relationship Graph

Source Code

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

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

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

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

Domain

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free