From 039fb1a98e332a90793a8643448c544fca5d85d9 Mon Sep 17 00:00:00 2001 From: Palash Tyagi <23239946+Magnus167@users.noreply.github.com> Date: Mon, 4 Aug 2025 00:04:07 +0100 Subject: [PATCH] Enhance utilities documentation with additional date and random number examples --- docs/src/utilities.md | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/docs/src/utilities.md b/docs/src/utilities.md index 1bed694..28ddaab 100644 --- a/docs/src/utilities.md +++ b/docs/src/utilities.md @@ -3,16 +3,36 @@ Utilities provide handy helpers around the core library. Existing tools include: -- Date utilities for generating calendar sequences. +- Date utilities for generating calendar sequences and business‑day sets +- Random number generators for simulations and testing ## Date Helpers ```rust # extern crate rustframe; -use rustframe::utils::dateutils::{DatesList, DateFreq}; +use rustframe::utils::dateutils::{BDatesList, BDateFreq, DatesList, DateFreq}; +// Calendar sequence let list = DatesList::new("2024-01-01".into(), "2024-01-03".into(), DateFreq::Daily); assert_eq!(list.count().unwrap(), 3); + +// Business days starting from 2024‑01‑02 +let bdates = BDatesList::from_n_periods("2024-01-02".into(), BDateFreq::Daily, 3).unwrap(); +assert_eq!(bdates.list().unwrap().len(), 3); +``` + +## Random Numbers + +The `random` module offers deterministic and cryptographically secure RNGs. + +```rust +# extern crate rustframe; +use rustframe::random::{Prng, Rng}; + +let mut rng = Prng::new(42); +let v1 = rng.next_u64(); +let v2 = rng.next_u64(); +assert_ne!(v1, v2); ``` Upcoming utilities will cover: