PgVarcharBuilder Class — drizzle-orm Architecture
Architecture documentation for the PgVarcharBuilder class in varchar.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 6f0f848e_409b_e1ff_5f8e_35e9be858f46["PgVarcharBuilder"] 10fa851b_a5c2_87ef_18e8_115bcbf2d9d4["varchar.ts"] 6f0f848e_409b_e1ff_5f8e_35e9be858f46 -->|defined in| 10fa851b_a5c2_87ef_18e8_115bcbf2d9d4 a6dc2d91_bbe6_d884_2a22_50ca198bd17b["constructor()"] 6f0f848e_409b_e1ff_5f8e_35e9be858f46 -->|method| a6dc2d91_bbe6_d884_2a22_50ca198bd17b 6f4d7938_26b2_72da_42b1_cbd7398a6b10["build()"] 6f0f848e_409b_e1ff_5f8e_35e9be858f46 -->|method| 6f4d7938_26b2_72da_42b1_cbd7398a6b10
Relationship Graph
Source Code
drizzle-orm/src/pg-core/columns/varchar.ts lines 22–46
export class PgVarcharBuilder<
T extends ColumnBuilderBaseConfig<'string', 'PgVarchar'> & { length?: number | undefined },
> extends PgColumnBuilder<
T,
{ length: T['length']; enumValues: T['enumValues'] },
{ length: T['length'] }
> {
static override readonly [entityKind]: string = 'PgVarcharBuilder';
constructor(name: T['name'], config: PgVarcharConfig<T['enumValues'], T['length']>) {
super(name, 'string', 'PgVarchar');
this.config.length = config.length;
this.config.enumValues = config.enum;
}
/** @internal */
override build<TTableName extends string>(
table: AnyPgTable<{ name: TTableName }>,
): PgVarchar<MakeColumnConfig<T, TTableName> & { length: T['length'] }> {
return new PgVarchar<MakeColumnConfig<T, TTableName> & { length: T['length'] }>(
table,
this.config as ColumnBuilderRuntimeConfig<any, any>,
);
}
}
Domain
Defined In
Source
Frequently Asked Questions
What is the PgVarcharBuilder class?
PgVarcharBuilder is a class in the drizzle-orm codebase, defined in drizzle-orm/src/pg-core/columns/varchar.ts.
Where is PgVarcharBuilder defined?
PgVarcharBuilder is defined in drizzle-orm/src/pg-core/columns/varchar.ts at line 22.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free