init() — drizzle-orm Function Reference
Architecture documentation for the init() function in Generators.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 9da05167_80c6_e057_92b7_994ab2f4899b["init()"] 1054b61b_b48b_edf5_f7d5_53582dab5417["GenerateUniqueStreetAddress"] 9da05167_80c6_e057_92b7_994ab2f4899b -->|defined in| 1054b61b_b48b_edf5_f7d5_53582dab5417 style 9da05167_80c6_e057_92b7_994ab2f4899b fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-seed/src/services/Generators.ts lines 2258–2306
override init({ count, seed }: { count: number; seed: number }) {
const streetNumberStrs = Array.from({ length: 999 }, (_, i) => String(i + 1));
const maxUniqueStreetnamesNumber = streetNumberStrs.length * firstNames.length * streetSuffix.length
+ streetNumberStrs.length * firstNames.length * streetSuffix.length;
if (count > maxUniqueStreetnamesNumber) {
throw new RangeError(
`count exceeds max number of unique street names(${maxUniqueStreetnamesNumber}).`,
);
}
const maxStreetAddressLength = 4 + Math.max(maxFirstNameLength, maxLastNameLength) + 1 + maxStreetSuffixLength;
if (this.stringLength !== undefined && this.stringLength < maxStreetAddressLength) {
throw new Error(
`You can't use street address generator with a db column length restriction of ${this.stringLength}. Set the maximum string length to at least ${maxStreetAddressLength}.`,
);
}
const rng = prand.xoroshiro128plus(seed);
// ["1", "2", ..., "999"]
const possStreetNameObjs = [
{
indicesGen: new GenerateUniqueInt({
minValue: 0,
maxValue: streetNumberStrs.length * firstNames.length * streetSuffix.length - 1,
}),
maxUniqueStreetNamesNumber: streetNumberStrs.length * firstNames.length * streetSuffix.length,
count: 0,
arraysToChooseFrom: [streetNumberStrs, firstNames, streetSuffix],
},
{
indicesGen: new GenerateUniqueInt({
minValue: 0,
maxValue: streetNumberStrs.length * lastNames.length * streetSuffix.length - 1,
}),
maxUniqueStreetNamesNumber: streetNumberStrs.length * firstNames.length * streetSuffix.length,
count: 0,
arraysToChooseFrom: [streetNumberStrs, lastNames, streetSuffix],
},
];
for (const possStreetNameObj of possStreetNameObjs) {
possStreetNameObj.indicesGen.skipCheck = true;
possStreetNameObj.indicesGen.init({ count, seed });
}
this.state = { rng, possStreetNameObjs };
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does init() do?
init() is a function in the drizzle-orm codebase, defined in drizzle-seed/src/services/Generators.ts.
Where is init() defined?
init() is defined in drizzle-seed/src/services/Generators.ts at line 2258.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free