diff --git a/generators/element.ts b/generators/element.ts new file mode 100644 index 0000000..d1f197f --- /dev/null +++ b/generators/element.ts @@ -0,0 +1,10 @@ +import { getInteger } from "../random/number.ts"; + +export default function* ( + { list = ["A", "B", "C"] } = {}, +) { + while (true) { + const index = getInteger({ min: 0, max: list.length }); + yield list[index]; + } +} diff --git a/generators/index.ts b/generators/index.ts index 7d1ae0a..79f12c0 100644 --- a/generators/index.ts +++ b/generators/index.ts @@ -1,3 +1,4 @@ +import element from "./element.ts"; import integer from "./integer.ts"; import ipv4 from "./ipv4.ts"; @@ -5,6 +6,6 @@ interface Generators { [index: string]: (config: any) => any; } -const generators: Generators = { integer, ipv4 }; +const generators: Generators = { element, integer, ipv4 }; export default generators;