PgHalfVector Class — drizzle-orm Architecture
Architecture documentation for the PgHalfVector class in halfvec.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 7bd9d57e_d974_7368_a2da_131117bae82c["PgHalfVector"] c85824cf_6363_9a74_fc67_e52ab4f0baae["halfvec.ts"] 7bd9d57e_d974_7368_a2da_131117bae82c -->|defined in| c85824cf_6363_9a74_fc67_e52ab4f0baae e84f524b_898b_60a5_7935_a17f2c10d7b4["getSQLType()"] 7bd9d57e_d974_7368_a2da_131117bae82c -->|method| e84f524b_898b_60a5_7935_a17f2c10d7b4 3278c2b2_73af_3062_7540_553aaf6eefec["mapToDriverValue()"] 7bd9d57e_d974_7368_a2da_131117bae82c -->|method| 3278c2b2_73af_3062_7540_553aaf6eefec aff6d3ec_d26f_7d7e_c3ba_1b9baf92d3a3["mapFromDriverValue()"] 7bd9d57e_d974_7368_a2da_131117bae82c -->|method| aff6d3ec_d26f_7d7e_c3ba_1b9baf92d3a3
Relationship Graph
Source Code
drizzle-orm/src/pg-core/columns/vector_extension/halfvec.ts lines 43–64
export class PgHalfVector<T extends ColumnBaseConfig<'array', 'PgHalfVector'> & { dimensions: number }>
extends PgColumn<T, { dimensions: T['dimensions'] }, { dimensions: T['dimensions'] }>
{
static override readonly [entityKind]: string = 'PgHalfVector';
readonly dimensions: T['dimensions'] = this.config.dimensions;
getSQLType(): string {
return `halfvec(${this.dimensions})`;
}
override mapToDriverValue(value: unknown): unknown {
return JSON.stringify(value);
}
override mapFromDriverValue(value: string): unknown {
return value
.slice(1, -1)
.split(',')
.map((v) => Number.parseFloat(v));
}
}
Domain
Source
Frequently Asked Questions
What is the PgHalfVector class?
PgHalfVector is a class in the drizzle-orm codebase, defined in drizzle-orm/src/pg-core/columns/vector_extension/halfvec.ts.
Where is PgHalfVector defined?
PgHalfVector is defined in drizzle-orm/src/pg-core/columns/vector_extension/halfvec.ts at line 43.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free