MySqlDecimal Class — drizzle-orm Architecture
Architecture documentation for the MySqlDecimal class in decimal.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 95b071b9_724a_bc1e_e11b_2b42adc59bbc["MySqlDecimal"] 1cab2e69_931d_80bd_c0f4_f9093012117e["decimal.ts"] 95b071b9_724a_bc1e_e11b_2b42adc59bbc -->|defined in| 1cab2e69_931d_80bd_c0f4_f9093012117e e6c32510_71f6_9fd5_d855_ec1988995547["mapFromDriverValue()"] 95b071b9_724a_bc1e_e11b_2b42adc59bbc -->|method| e6c32510_71f6_9fd5_d855_ec1988995547 4cea38f9_e736_525e_4b7f_fb2aaa05b336["getSQLType()"] 95b071b9_724a_bc1e_e11b_2b42adc59bbc -->|method| 4cea38f9_e736_525e_4b7f_fb2aaa05b336
Relationship Graph
Source Code
drizzle-orm/src/mysql-core/columns/decimal.ts lines 40–67
export class MySqlDecimal<T extends ColumnBaseConfig<'string', 'MySqlDecimal'>>
extends MySqlColumnWithAutoIncrement<T, MySqlDecimalConfig>
{
static override readonly [entityKind]: string = 'MySqlDecimal';
readonly precision: number | undefined = this.config.precision;
readonly scale: number | undefined = this.config.scale;
readonly unsigned: boolean | undefined = this.config.unsigned;
override mapFromDriverValue(value: unknown): string {
if (typeof value === 'string') return value;
return String(value);
}
getSQLType(): string {
let type = '';
if (this.precision !== undefined && this.scale !== undefined) {
type += `decimal(${this.precision},${this.scale})`;
} else if (this.precision === undefined) {
type += 'decimal';
} else {
type += `decimal(${this.precision})`;
}
type = type === 'decimal(10,0)' || type === 'decimal(10)' ? 'decimal' : type;
return this.unsigned ? `${type} unsigned` : type;
}
}
Domain
Source
Frequently Asked Questions
What is the MySqlDecimal class?
MySqlDecimal is a class in the drizzle-orm codebase, defined in drizzle-orm/src/mysql-core/columns/decimal.ts.
Where is MySqlDecimal defined?
MySqlDecimal is defined in drizzle-orm/src/mysql-core/columns/decimal.ts at line 40.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free