#![doc = include_str!("../README.md")]
#![cfg_attr(docsrs, feature(doc_cfg))]
#![cfg_attr(not(feature = "std"), no_std)]
#![cfg_attr(kani, feature(stmt_expr_attributes))]
#![cfg_attr(kani, feature(proc_macro_hygiene))]
pub const JD_J1900: f64 = 2_415_020.0;
pub const JD_J2000: f64 = 2_451_545.0;
pub const MJD_J1900: f64 = 15_020.0;
pub const MJD_J2000: f64 = 51_544.5;
pub const ET_EPOCH_S: i64 = 3_155_716_800;
pub const MJD_OFFSET: f64 = 2_400_000.5;
pub const JD_J1900_NOON: f64 = 2_415_020.5;
pub const DAYS_PER_YEAR: f64 = 365.25;
pub const DAYS_PER_YEAR_NLD: f64 = 365.0;
pub const DAYS_PER_CENTURY: f64 = 36525.0;
pub const DAYS_PER_CENTURY_I64: i64 = 36525;
pub const DAYS_PER_WEEK: f64 = 7.0;
pub const DAYS_PER_WEEK_I64: i64 = 7;
pub const SECONDS_PER_MINUTE: f64 = 60.0;
pub const SECONDS_PER_HOUR: f64 = 3_600.0;
pub const SECONDS_PER_DAY: f64 = 86_400.0;
pub const SECONDS_PER_DAY_I64: i64 = 86_400;
pub const SECONDS_PER_CENTURY: f64 = SECONDS_PER_DAY * DAYS_PER_CENTURY;
pub const SECONDS_PER_YEAR: f64 = 31_557_600.0;
pub const SECONDS_PER_YEAR_I64: i64 = 31_557_600;
pub const SECONDS_PER_TROPICAL_YEAR: f64 = 31_556_925.974_7;
pub const SECONDS_PER_SIDEREAL_YEAR: f64 = 31_558_150.0;
pub mod efmt;
mod parser;
pub mod errors;
pub use errors::{DurationError, HifitimeError, ParsingError};
mod epoch;
pub use epoch::*;
mod duration;
pub use duration::*;
mod timescale;
pub use timescale::*;
mod timeunits;
pub use timeunits::*;
mod timeseries;
pub use timeseries::*;
mod weekday;
pub use weekday::*;
mod month;
pub use month::*;
mod polynomial;
pub use polynomial::Polynomial;
pub mod prelude {
pub use crate::efmt::{Format, Formatter};
pub use crate::{
Duration, DurationError, Epoch, Freq, Frequencies, HifitimeError, ParsingError, TimeScale,
TimeSeries, TimeUnits, Unit, Weekday,
};
}
#[cfg(kani)]
mod kani_verif;
#[cfg(feature = "python")]
pub mod python;
#[cfg(feature = "std")]
extern crate core;