///|
// Represents a CALENDAR_DATE entity.
// Example:
//   CALENDAR_DATE(2025, 22, 12)
pub struct CalendarDate {
  year_component : Int32
  day_component : Int32
  month_component : Int32
}

///|
pub fn CalendarDate::new(
  year_component : Int32,
  day_component : Int32,
  month_component : Int32,
) -> CalendarDate {
  CalendarDate::{ year_component, day_component, month_component, }
}

///|
pub impl @step.Entity for CalendarDate with fn to_step(self) {
  "CALENDAR_DATE(\{self.year_component},\{self.day_component},\{self.month_component})"
}