From c37659f09daef19db5d6158361b787d2035fda33 Mon Sep 17 00:00:00 2001 From: Palash Tyagi <23239946+Magnus167@users.noreply.github.com> Date: Wed, 14 May 2025 23:54:11 +0100 Subject: [PATCH] removing unused comments and cleaning up the code structure --- src/utils/dateutils/bdates.rs | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/src/utils/dateutils/bdates.rs b/src/utils/dateutils/bdates.rs index 0182ae7..bac5f5c 100644 --- a/src/utils/dateutils/bdates.rs +++ b/src/utils/dateutils/bdates.rs @@ -1,7 +1,9 @@ +//! This module provides functionality for generating and manipulating business dates. +//! It includes the `BDatesList`, which emulates a `DateList` structure and its properties. +//! It uses `DateList` and `DateListGenerator`, adjusting the output to work on business dates. + use chrono::{Datelike, Duration, NaiveDate, Weekday}; -use std::collections::HashMap; use std::error::Error; -use std::hash::Hash; use std::result::Result; use crate::utils::dateutils::dates::{find_next_date, AggregationType, DateFreq, DatesGenerator}; @@ -16,19 +18,6 @@ pub struct BDatesList { start_date_str: String, end_date_str: String, freq: DateFreq, - // TODO: cache the generated date list to reduce repeated computation. - // Currently, list(), count(), and groups() regenerate the list on every invocation. - // cached_list: Option>, -} - -// Enumeration of period keys used for grouping dates. -#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, PartialOrd, Ord)] -enum GroupKey { - Daily(NaiveDate), // Daily grouping: use the exact date - Weekly(i32, u32), // Weekly grouping: use year and ISO week number - Monthly(i32, u32), // Monthly grouping: use year and month (1-12) - Quarterly(i32, u32), // Quarterly grouping: use year and quarter (1-4) - Yearly(i32), // Yearly grouping: use year } /// Represents a collection of business dates generated according to specific rules. @@ -404,7 +393,6 @@ impl Iterator for BDatesGenerator { DateFreq::WeeklyMonday | DateFreq::WeeklyFriday => next_date, DateFreq::MonthEnd | DateFreq::QuarterEnd | DateFreq::YearEnd => { - // Adjust to the last business date of the month, quarter, or year. let adjusted_date = iter_reverse_till_bdate(next_date); if self.start_date > adjusted_date { // Skip this iteration if the adjusted date is before the start date. @@ -1192,4 +1180,4 @@ mod tests { ); Ok(()) } -} // end mod tests +}