numberColumnToSchema() — drizzle-orm Function Reference
Architecture documentation for the numberColumnToSchema() function in column.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 69a6b543_31b2_91b6_44db_f5820af9a346["numberColumnToSchema()"] d3d3a2d1_4197_a39b_12f9_f9c7be54febc["column.ts"] 69a6b543_31b2_91b6_44db_f5820af9a346 -->|defined in| d3d3a2d1_4197_a39b_12f9_f9c7be54febc 85adcc4b_0e8e_a2e6_a538_afbe19c96304["columnToSchema()"] 85adcc4b_0e8e_a2e6_a538_afbe19c96304 -->|calls| 69a6b543_31b2_91b6_44db_f5820af9a346 e19d71e0_1604_8cb6_0dc1_42108a118720["isColumnType()"] 69a6b543_31b2_91b6_44db_f5820af9a346 -->|calls| e19d71e0_1604_8cb6_0dc1_42108a118720 style 69a6b543_31b2_91b6_44db_f5820af9a346 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-zod/src/column.ts lines 137–250
function numberColumnToSchema(
column: Column,
z: typeof zod,
coerce: CreateSchemaFactoryOptions<
Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined
>['coerce'],
): zod.ZodType {
let unsigned = column.getSQLType().includes('unsigned');
let min!: number;
let max!: number;
let integer = false;
if (isColumnType<MySqlTinyInt<any> | SingleStoreTinyInt<any>>(column, ['MySqlTinyInt', 'SingleStoreTinyInt'])) {
min = unsigned ? 0 : CONSTANTS.INT8_MIN;
max = unsigned ? CONSTANTS.INT8_UNSIGNED_MAX : CONSTANTS.INT8_MAX;
integer = true;
} else if (
isColumnType<PgSmallInt<any> | PgSmallSerial<any> | MySqlSmallInt<any> | SingleStoreSmallInt<any>>(column, [
'PgSmallInt',
'PgSmallSerial',
'MySqlSmallInt',
'SingleStoreSmallInt',
])
) {
min = unsigned ? 0 : CONSTANTS.INT16_MIN;
max = unsigned ? CONSTANTS.INT16_UNSIGNED_MAX : CONSTANTS.INT16_MAX;
integer = true;
} else if (
isColumnType<
PgReal<any> | MySqlFloat<any> | MySqlMediumInt<any> | SingleStoreMediumInt<any> | SingleStoreFloat<any>
>(column, [
'PgReal',
'MySqlFloat',
'MySqlMediumInt',
'SingleStoreMediumInt',
'SingleStoreFloat',
])
) {
min = unsigned ? 0 : CONSTANTS.INT24_MIN;
max = unsigned ? CONSTANTS.INT24_UNSIGNED_MAX : CONSTANTS.INT24_MAX;
integer = isColumnType(column, ['MySqlMediumInt', 'SingleStoreMediumInt']);
} else if (
isColumnType<PgInteger<any> | PgSerial<any> | MySqlInt<any> | SingleStoreInt<any>>(column, [
'PgInteger',
'PgSerial',
'MySqlInt',
'SingleStoreInt',
])
) {
min = unsigned ? 0 : CONSTANTS.INT32_MIN;
max = unsigned ? CONSTANTS.INT32_UNSIGNED_MAX : CONSTANTS.INT32_MAX;
integer = true;
} else if (
isColumnType<
| PgDoublePrecision<any>
| MySqlReal<any>
| MySqlDouble<any>
| SingleStoreReal<any>
| SingleStoreDouble<any>
| SQLiteReal<any>
>(column, [
'PgDoublePrecision',
'MySqlReal',
'MySqlDouble',
'SingleStoreReal',
'SingleStoreDouble',
'SQLiteReal',
])
) {
min = unsigned ? 0 : CONSTANTS.INT48_MIN;
max = unsigned ? CONSTANTS.INT48_UNSIGNED_MAX : CONSTANTS.INT48_MAX;
} else if (
isColumnType<
| PgBigInt53<any>
| PgBigSerial53<any>
| MySqlBigInt53<any>
| MySqlSerial<any>
| SingleStoreBigInt53<any>
| SingleStoreSerial<any>
| SQLiteInteger<any>
>(
Domain
Subdomains
Defined In
Calls
Called By
Source
Frequently Asked Questions
What does numberColumnToSchema() do?
numberColumnToSchema() is a function in the drizzle-orm codebase, defined in drizzle-zod/src/column.ts.
Where is numberColumnToSchema() defined?
numberColumnToSchema() is defined in drizzle-zod/src/column.ts at line 137.
What does numberColumnToSchema() call?
numberColumnToSchema() calls 1 function(s): isColumnType.
What calls numberColumnToSchema()?
numberColumnToSchema() is called by 1 function(s): columnToSchema.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free