CreateTypeEnumConvertor Class — drizzle-orm Architecture
Architecture documentation for the CreateTypeEnumConvertor class in sqlgenerator.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 13136106_a856_4f84_043e_c76843b1dc3f["CreateTypeEnumConvertor"] fe4174c7_3b9c_5b26_98a0_b2395ca21939["sqlgenerator.ts"] 13136106_a856_4f84_043e_c76843b1dc3f -->|defined in| fe4174c7_3b9c_5b26_98a0_b2395ca21939 392af024_c3b4_7879_3002_5e8280e10e03["can()"] 13136106_a856_4f84_043e_c76843b1dc3f -->|method| 392af024_c3b4_7879_3002_5e8280e10e03 5d74f2d3_75ea_3b3e_58ff_04a35f70eafd["convert()"] 13136106_a856_4f84_043e_c76843b1dc3f -->|method| 5d74f2d3_75ea_3b3e_58ff_04a35f70eafd
Relationship Graph
Source Code
drizzle-kit/src/sqlgenerator.ts lines 1375–1402
class CreateTypeEnumConvertor extends Convertor {
can(statement: JsonStatement): boolean {
return statement.type === 'create_type_enum';
}
convert(st: JsonCreateEnumStatement) {
const { name, values, schema } = st;
const enumNameWithSchema = schema ? `"${schema}"."${name}"` : `"${name}"`;
let valuesStatement = '(';
valuesStatement += values.map((it) => `'${escapeSingleQuotes(it)}'`).join(', ');
valuesStatement += ')';
// TODO do we need this?
// let statement = 'DO $$ BEGIN';
// statement += '\n';
let statement = `CREATE TYPE ${enumNameWithSchema} AS ENUM${valuesStatement};`;
// statement += '\n';
// statement += 'EXCEPTION';
// statement += '\n';
// statement += ' WHEN duplicate_object THEN null;';
// statement += '\n';
// statement += 'END $$;';
// statement += '\n';
return statement;
}
}
Domain
Defined In
Source
Frequently Asked Questions
What is the CreateTypeEnumConvertor class?
CreateTypeEnumConvertor is a class in the drizzle-orm codebase, defined in drizzle-kit/src/sqlgenerator.ts.
Where is CreateTypeEnumConvertor defined?
CreateTypeEnumConvertor is defined in drizzle-kit/src/sqlgenerator.ts at line 1375.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free