Frequently Asked Questions
General Questions
What is the Balinese Calendar?
The Balinese calendar is a complex system used in Bali, Indonesia that combines multiple overlapping cycles including the Saka lunar calendar, the 210-day Pawukon cycle, and nine different weekly systems (Wewaran).
Why use this library?
This library provides accurate, efficient, and type-safe calculations for all aspects of the Balinese calendar. It's written in Rust for performance and reliability.
What Rust version is required?
The minimum supported Rust version (MSRV) is 1.86.0. You can update Rust with rustup update.
Usage Questions
How do I create a Balinese date?
Use the BalineseDate::from_ymd function to create a date from year, month, and day values.
How do I check for holy days?
Use the rahinan() method to get a list of holy days for a specific date.
What date range is supported?
The library supports dates from 1800 to 2200 CE. Attempting to create a date outside this range will return an error.
Technical Questions
Is the library thread-safe?
Yes, BalineseDate is immutable and thread-safe. You can safely share it across threads.
Can I serialize/deserialize dates?
Yes, enable the serde feature in your Cargo.toml to use serialization with serde.
What about performance?
The library is highly optimized. Creating a date and accessing all calendar components takes microseconds.
Still Have Questions?
Open an issue on GitHub if you have questions not covered here.