Home / Class/ GelArray Class — drizzle-orm Architecture

GelArray Class — drizzle-orm Architecture

Architecture documentation for the GelArray class in common.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  0853c5bc_1c29_3bdc_9fd3_d8f7a4169fa9["GelArray"]
  a74dd48d_d5e3_6bb4_19c7_1954c9126816["common.ts"]
  0853c5bc_1c29_3bdc_9fd3_d8f7a4169fa9 -->|defined in| a74dd48d_d5e3_6bb4_19c7_1954c9126816
  f1ac8acf_d936_fb97_c4d4_255a6bf245a7["constructor()"]
  0853c5bc_1c29_3bdc_9fd3_d8f7a4169fa9 -->|method| f1ac8acf_d936_fb97_c4d4_255a6bf245a7
  a361b594_c057_8fa0_ea13_29104e1d6b16["getSQLType()"]
  0853c5bc_1c29_3bdc_9fd3_d8f7a4169fa9 -->|method| a361b594_c057_8fa0_ea13_29104e1d6b16

Relationship Graph

Source Code

drizzle-orm/src/gel-core/columns/common.ts lines 308–332

export class GelArray<
	T extends ColumnBaseConfig<'array', 'GelArray'> & {
		size: number | undefined;
		baseBuilder: ColumnBuilderBaseConfig<ColumnDataType, string>;
	},
	TBase extends ColumnBuilderBaseConfig<ColumnDataType, string>,
> extends GelColumn<T, {}, { size: T['size']; baseBuilder: T['baseBuilder'] }> {
	readonly size: T['size'];

	static override readonly [entityKind]: string = 'GelArray';

	constructor(
		table: AnyGelTable<{ name: T['tableName'] }>,
		config: GelArrayBuilder<T, TBase>['config'],
		readonly baseColumn: GelColumn,
		readonly range?: [number | undefined, number | undefined],
	) {
		super(table, config);
		this.size = config.size;
	}

	getSQLType(): string {
		return `${this.baseColumn.getSQLType()}[${typeof this.size === 'number' ? this.size : ''}]`;
	}
}

Domain

Frequently Asked Questions

What is the GelArray class?
GelArray is a class in the drizzle-orm codebase, defined in drizzle-orm/src/gel-core/columns/common.ts.
Where is GelArray defined?
GelArray is defined in drizzle-orm/src/gel-core/columns/common.ts at line 308.

Analyze Your Own Codebase

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

Try Supermodel Free