bento-kit 0.1.1

A bento box of common Rust utilities: id generation, timing, masking
Documentation
//! Run with: `cargo run --example id_demo`

#[cfg(feature = "id")]
fn main() {
    use bento_kit::id;

    println!("== Node-aligned ==");
    println!("makeUUID(false)  = {}", id::uuid_v4());
    println!("makeUUID(true)   = {}", id::uuid_v4_simple());
    println!("randomInt(0,100) = {}", id::random_int(0, 100));
    println!("randomString(20) = {}", id::random_string(20));
    println!("makeUidPostfix   = {}", id::make_uid_postfix());
    println!(
        "makeUserId       = {}",
        id::make_user_id("app1", "user42", "client99")
    );
    println!("makeDbKey        = {}", id::make_db_key("user42"));
    println!(
        "generateSessionId(default prefix) = {}",
        id::generate_session_id()
    );

    id::set_session_prefix("myapp");
    println!(
        "generateSessionId(prefix=myapp)   = {}",
        id::generate_session_id()
    );

    println!();
    println!("== Rust additions ==");
    println!("uuid_v7          = {}", id::uuid_v7());
    println!("nanoid           = {}", id::nanoid());
    println!("nanoid_with_len  = {}", id::nanoid_with_len(8));
}

#[cfg(not(feature = "id"))]
fn main() {
    eprintln!("Run with --features id");
}