# `sqlite-fastrand` Documentation A full reference to every function and module that `sqlite-fastrand` offers. As a reminder, `sqlite-fastrand` follows semver and is pre v1, so breaking changes are to be expected. ## API Reference

fastrand_version()

Returns the semver version string of the current version of `sqlite-fastrand`. ```sql select fastrand_version(); -- "v0.1.0" ```

fastrand_debug()

Returns a debug string of various info about `sqlite-fastrand`, including the version string, build date, and commit hash. ```sql select fastrand_debug(); 'Version: v0.1.0 Source: 247dca8f4cea1abdc30ed3e852c3e5b71374c177' ```

fastrand_seed_get()

Gets the current seed value powering the underlying random number generator. Returns text, because the seed is an unsigned 64 bit integer, larger than SQLite's max integer size. Based on [`Rng.get_seed()`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.get_seed). ```sql select fastrand_seed_get(); -- '3362862862133652073' ```

fastrand_seed_set()

Set the seed value of the underlying random number generator. Only i64 values allows. Returns 1 if succesful. Based on [`Rng.seed()`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.seed). ```sql select fastrand_seed_set(); -- 1 ```

fastrand_double()

Returns a random number between 0 and 1. Based on [`Rng.f64()`]https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.f64(). ```sql select fastrand_double(); -- 0.644268998061438 select fastrand_double(); -- 0.810443374870184 ```

fastrand_int()

Returns a random 32 bit integer between `-2_147_483_648` and `2_147_483_647`. Based on [`Rng.i32()`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.i32). ```sql select fastrand_int(); -- 1321083668 select fastrand_int(); -- 1579705906 ```

fastrand_int64()

Returns a random 64 bit integer between `-9_223_372_036_854_775_808` and `9_223_372_036_854_775_807`. Based on [`Rng.i64()`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.i64). ```sql select fastrand_int64(); -- -6587368321689545426 select fastrand_int64(); -- 7259195115703397710 ```

fastrand_blob(N)

Returns a blob of length `N` with random bytes. Based on [`Rng.u8()`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.u8). ```sql select fastrand_blob(4); -- X'bc71ef5b' select fastrand_blob(12); -- X'22fce3c0c809c20b0c54251e' ```

fastrand_bool()

Returns a random boolean value, `0` or `1`. Based on [`Rng.bool`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.bool). ```sql select fastrand_bool(); -- 1 select fastrand_bool(); -- 0 ```

fastrand_alphabetic()

Returns a random alphabetic character, within `a-z` and `A-Z`. Based on [`Rng.alphabetic`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.alphabetic). ```sql select fastrand_alphabetic(); -- 'Q' select fastrand_alphabetic(); -- 'b' ```

fastrand_alphanumeric()

Returns a random alphanumeric character, within `a-z`, `A-Z`, or `0-9`. Based on [`Rng.alphanumeric`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.alphanumeric). ```sql select fastrand_alphanumeric(); -- 'U' select fastrand_alphanumeric(); -- '4' select fastrand_alphanumeric(); -- 'i' ```

fastrand_digit(base)

Returns a random digit in the given `base`. The `base` must be greater than 0 and less than 36. Based on [`Rng.digit`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.digit). ```sql select fastrand_digit(4); -- '1' select fastrand_digit(35); -- 'v' ```

fastrand_lowercase()

Returns a random character within `a-z`. Based on [`Rng.lowercase()`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.lowercase). ```sql select fastrand_lowercase(); -- 's' select fastrand_lowercase(); -- 'p' ```

fastrand_uppercase()

Returns a random character within `A-Z`. Based on [`Rng.uppercase()`](https://docs.rs/fastrand/1.8.0/fastrand/struct.Rng.html#method.uppercase). ```sql select fastrand_uppercase(); -- 'E' select fastrand_uppercase(); -- 'J' ```