seedfaker-core 0.4.0-alpha.1

Core library for seedfaker — deterministic synthetic generator for realistic, correlated, and noisy test records
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use std::fmt::Write;

use crate::ctx::GenContext;

pub fn gen(ctx: &mut GenContext<'_>, buf: &mut String) {
    let arr = ["STU", "SID", ""];
    let p = arr[ctx.rng.urange(0, arr.len() - 1)];
    let n = ctx.rng.range(100_000, 999_999_999);
    if p.is_empty() {
        buf.reserve(9);
        let _ = write!(buf, "{n}");
    } else {
        buf.reserve(p.len() + 1 + 9);
        buf.push_str(p);
        let _ = write!(buf, "-{n}");
    }
}