generate() — drizzle-orm Function Reference
Architecture documentation for the generate() function in Generators.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD cf7d0536_2315_3048_f863_848c58a61729["generate()"] e2c413a5_f1cc_23b4_acd7_ab626330b0d7["GenerateUniqueInt"] cf7d0536_2315_3048_f863_848c58a61729 -->|defined in| e2c413a5_f1cc_23b4_acd7_ab626330b0d7 2a2f15f9_4451_afca_fcc5_0b46ffae1a97["generateNumber()"] cf7d0536_2315_3048_f863_848c58a61729 -->|calls| 2a2f15f9_4451_afca_fcc5_0b46ffae1a97 72c3e623_159f_0722_0f85_3d39045d8852["generateBigint()"] cf7d0536_2315_3048_f863_848c58a61729 -->|calls| 72c3e623_159f_0722_0f85_3d39045d8852 style cf7d0536_2315_3048_f863_848c58a61729 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-seed/src/services/Generators.ts lines 700–748
generate() {
if (this.state === undefined) {
throw new Error('state is not defined.');
}
let intervalIdx: number,
numb: number | bigint | undefined;
const intervalsToAdd: (number | bigint)[][] = [];
if (this.state.intervals.length === 0) {
if (this.skipCheck === false) {
throw new RangeError(
'generateUniqueInt: count exceeds max number of unique integers in given range(min, max), try to increase range.',
);
} else {
return;
}
}
[intervalIdx, this.state.rng] = prand.uniformIntDistribution(
0,
this.state.intervals.length - 1,
this.state.rng,
);
const interval = this.state.intervals[intervalIdx] as (number | bigint)[];
const [currMinNumb, currMaxNumb] = [interval[0] as number | bigint, interval[1] as number | bigint];
if (typeof currMinNumb === 'number' && typeof currMaxNumb === 'number') {
numb = this.generateNumber(currMinNumb, currMaxNumb, intervalsToAdd as number[][], intervalIdx);
} else if (typeof currMinNumb === 'bigint' && typeof currMaxNumb === 'bigint') {
numb = this.generateBigint(
currMinNumb as bigint,
currMaxNumb as bigint,
intervalsToAdd as bigint[][],
intervalIdx,
);
}
if (this.dataType === 'string') {
return String(numb);
}
if (this.dataType === 'bigint' && numb !== undefined) {
numb = BigInt(numb);
}
return numb;
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does generate() do?
generate() is a function in the drizzle-orm codebase, defined in drizzle-seed/src/services/Generators.ts.
Where is generate() defined?
generate() is defined in drizzle-seed/src/services/Generators.ts at line 700.
What does generate() call?
generate() calls 2 function(s): generateBigint, generateNumber.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free