pub struct NepaliDate {
pub year: i32,
pub month: u8,
pub day: u8,
}Fields§
§year: i32§month: u8§day: u8Implementations§
Source§impl NepaliDate
impl NepaliDate
Sourcepub fn days_in_month(year: i32, month: u8) -> Result<u8>
pub fn days_in_month(year: i32, month: u8) -> Result<u8>
Returns the number of days in a given month
Sourcepub fn to_gregorian(&self) -> Result<(i32, u8, u8)>
pub fn to_gregorian(&self) -> Result<(i32, u8, u8)>
Converts Nepali date to Gregorian date (year, month, day)
Sourcepub fn from_gregorian(year: i32, month: u8, day: u8) -> Result<Self>
pub fn from_gregorian(year: i32, month: u8, day: u8) -> Result<Self>
Creates a Nepali date from a Gregorian date
Sourcepub fn to_ordinal(&self) -> i32
pub fn to_ordinal(&self) -> i32
Returns the ordinal representation of the date (days since 1975-01-01 BS) 1975-01-01 BS is ordinal 1.
Sourcepub fn from_ordinal(ordinal: i32) -> Result<Self>
pub fn from_ordinal(ordinal: i32) -> Result<Self>
Creates a NepaliDate from an ordinal (days since 1975-01-01 BS)
Sourcepub fn fiscal_year(&self) -> String
pub fn fiscal_year(&self) -> String
Returns the Nepali Fiscal Year for the date. In Nepal, the fiscal year starts on Shrawan 1. Returns a string like “2080/81”
Sourcepub fn fiscal_quarter(&self) -> u8
pub fn fiscal_quarter(&self) -> u8
Returns the fiscal quarter (1-4) Q1: Shrawan, Bhadra, Ashwin Q2: Kartik, Mangsir, Poush Q3: Magh, Falgun, Chaitra Q4: Baisakh, Jestha, Ashadh
Source§impl NepaliDate
impl NepaliDate
Sourcepub fn format_date(&self, format_str: &str) -> String
pub fn format_date(&self, format_str: &str) -> String
Formats the date using a format string
§Format Specifiers:
%Y- Four-digit year (e.g., 2077)%y- Two-digit year (e.g., 77)%m- Month as zero-padded decimal (01-12)%B- Full month name in English (e.g., Baisakh)%b- Abbreviated month name (first 3 letters)%d- Day as zero-padded decimal (01-31)%e- Day as space-padded decimal ( 1-31)%A- Full weekday name (requires conversion to Gregorian)%K- Devanagari year (e.g., २०७७)%n- Devanagari month (e.g., ०५)%D- Devanagari day (e.g., १९)%N- Devanagari month name (e.g., भाद्र)%G- Devanagari weekday name (e.g., शुक्रवार)%%- Literal % character
§Examples:
let date = NepaliDate::new(2077, 5, 19).unwrap();
assert_eq!(date.format_date("%Y-%m-%d"), "2077-05-19");
assert_eq!(date.format_date("%d %B %Y"), "19 Bhadra 2077");Sourcepub fn format_unicode(&self) -> String
pub fn format_unicode(&self) -> String
Formats the date in Unicode Devanagari script
§Example:
let date = NepaliDate::new(2077, 1, 1).unwrap();
println!("{}", date.format_unicode()); // "१ बैशाख २०७७"Sourcepub fn month_calendar(&self) -> String
pub fn month_calendar(&self) -> String
Generates a visual calendar string for the month of this date
Source§impl NepaliDate
impl NepaliDate
Sourcepub fn parse(input: &str, format: &str) -> Result<Self>
pub fn parse(input: &str, format: &str) -> Result<Self>
Parses a date string into a NepaliDate using a format string
§Format Specifiers:
%Y- Four-digit year (e.g., 2077)%m- Month as decimal (01-12)%d- Day as decimal (01-32)%B- Full month name in English (e.g., Bhadra)%b- Abbreviated month name (first 3 letters)
§Examples:
let date = NepaliDate::parse("2077-05-19", "%Y-%m-%d").unwrap();
assert_eq!(date.year, 2077);
assert_eq!(date.month, 5);
assert_eq!(date.day, 19);Trait Implementations§
Source§impl Clone for NepaliDate
impl Clone for NepaliDate
Source§fn clone(&self) -> NepaliDate
fn clone(&self) -> NepaliDate
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more