2 stable releases
1.1.0 | Oct 20, 2023 |
---|---|
1.0.0 | Oct 19, 2023 |
#365 in Date and time
17KB
170 lines
office-hours
Are you tired of your code working all day every day? Don't you feel bad that your code keeps working while you're off relaxing and having fun after work?
Well now you can use the power of office-hours
to only run your code within the working hours of the day!
[!IMPORTANT]
At the time of writing, the office hours are determined from the Local Time Zone of the host machine where the code is running. I might consider updating this library to support other timezones if I really want to suffer :P
Usage
-
Add this library to your project
cargo add office-hours
-
Import and use the
OfficeHours
structuse office_hours::OfficeHours; fn main() { // 9am to 5pm are the default office hours let office_hours = OfficeHours::default(); if office_hours.now() { println!("Blimey! Is it time for work already?"); } else { println!("Phew, still on break!"); } }
-
(Optional) Import and use the
office_hours!
macrouse office_hours::office_hours; fn main() { office_hours!({ println!("Blimey! Is it time for work already?"); }) }
Further examples can be found in the examples/ directory. (
cargo run --example default_hours
)
Development
[!NOTE] The Minimum Supported Rust Version is 1.60.0
-
Clone repository
git clone https://github.com/sgoudham/office-hours.git cd office-hours
-
Build
cargo build --release
-
Test
cargo test --verbose
License
Dependencies
~1.2–2MB
~35K SLoC