pub enum ZmanPrimitive {
Show 45 variants
ElevationAdjustedSunrise,
SeaLevelSunrise,
ConfiguredSunrise,
ConfiguredSunset,
SolarTransit,
SolarMidnight,
ChatzosHayomAsHalfDay,
ChatzosHayom,
ChatzosHalaylaAsHalfDay,
ChatzosHalayla,
ElevationAdjustedSunset,
SeaLevelSunset,
SunriseOffsetByDegrees(f64),
SunsetOffsetByDegrees(f64),
LocalMeanTime(f64),
CandleLighting,
Offset(&'static ZmanPrimitive, SignedDuration),
ZmanisOffset(&'static ZmanPrimitive, f64),
HalfDayBasedOffset(&'static ZmanPrimitive, &'static ZmanPrimitive, f64),
Shema(&'static ZmanPrimitive, &'static ZmanPrimitive, bool),
MinchaGedola(&'static ZmanPrimitive, &'static ZmanPrimitive, bool),
SamuchLeMinchaKetana(&'static ZmanPrimitive, &'static ZmanPrimitive, bool),
MinchaKetana(&'static ZmanPrimitive, &'static ZmanPrimitive, bool),
Tefila(&'static ZmanPrimitive, &'static ZmanPrimitive, bool),
PlagHamincha(&'static ZmanPrimitive, &'static ZmanPrimitive, bool),
SofZmanBiurChametz(&'static ZmanPrimitive, &'static ZmanPrimitive, bool),
SofZmanAchilasChametz(&'static ZmanPrimitive, &'static ZmanPrimitive, bool),
TzaisAteretTorah,
SofZmanKidushLevana15Days,
SofZmanKidushLevanaBetweenMoldos,
TchilasZmanKidushLevana3Days,
TchilasZmanKidushLevana7Days,
BainHashmashosRt2Stars,
MinchaGedolaAhavatShalom,
MinchaGedolaGraGreaterThan30,
MinchaKetanaAhavatShalom,
PlagAhavatShalom,
BeginCivilTwilight,
EndCivilTwilight,
BeginNauticalTwilight,
EndNauticalTwilight,
BeginAstronomicalTwilight,
EndAstronomicalTwilight,
SunsetOrWesternmostSolarAzimuth,
SunriseOrEasternmostSolarAzimuth,
}Expand description
A low-level building block for calculating zmanim.
These should typically not be used directly. Instead, use the presets in crate::zmanim::presets.
Variants§
ElevationAdjustedSunrise
Sunrise at the configured location/date.
SeaLevelSunrise
Sunrise at sea level (no elevation adjustment).
ConfiguredSunrise
Sunrise using the configured elevation mode (sea-level or elevation-adjusted).
ConfiguredSunset
Sunset using the configured elevation mode (sea-level or elevation-adjusted).
SolarTransit
Solar transit (local apparent noon / astronomical chatzos).
SolarMidnight
Solar anti-transit (local apparent midnight / astronomical chatzos halayla).
ChatzosHayomAsHalfDay
The midpoint between sunrise and sunset.
ChatzosHayom
Solar Transit or the midpoint between sunrise and sunset depending on the configuration.
ChatzosHalaylaAsHalfDay
The midpoint between sunset and the tomorrows sunrise.
ChatzosHalayla
Solar Midnight or the midpoint between sunset and the tomorrows sunrise depending on the configuration.
ElevationAdjustedSunset
Sunset at the configured location/date.
SeaLevelSunset
Sunset at sea level (no elevation adjustment).
SunriseOffsetByDegrees(f64)
Time before sunrise when the sun is degrees below the geometric horizon (no elevation adjustment).
SunsetOffsetByDegrees(f64)
Time after sunset when the sun is degrees below the geometric horizon (no elevation adjustment).
LocalMeanTime(f64)
Local mean time at the given hour (0.0–24.0).
CandleLighting
Shabbos/Yom Tov candle lighting time based on configuration.
Offset(&'static ZmanPrimitive, SignedDuration)
A fixed time offset from another ZmanPrimitive.
ZmanisOffset(&'static ZmanPrimitive, f64)
An offset in “shaos zmaniyos” according to the GRA from another ZmanPrimitive.
HalfDayBasedOffset(&'static ZmanPrimitive, &'static ZmanPrimitive, f64)
An offset expressed as a fraction of the half-day between two ZmanPrimitives.
Shema(&'static ZmanPrimitive, &'static ZmanPrimitive, bool)
Sof zman shma derived from two bounding ZmanPrimitives.
MinchaGedola(&'static ZmanPrimitive, &'static ZmanPrimitive, bool)
Mincha gedola derived from two bounding ZmanPrimitives.
SamuchLeMinchaKetana(&'static ZmanPrimitive, &'static ZmanPrimitive, bool)
Samuch le-mincha ketana derived from two bounding ZmanPrimitives.
MinchaKetana(&'static ZmanPrimitive, &'static ZmanPrimitive, bool)
Mincha ketana derived from two bounding ZmanPrimitives.
Tefila(&'static ZmanPrimitive, &'static ZmanPrimitive, bool)
Sof zman tefila derived from two bounding ZmanPrimitives.
PlagHamincha(&'static ZmanPrimitive, &'static ZmanPrimitive, bool)
Plag hamincha derived from two bounding ZmanPrimitives.
SofZmanBiurChametz(&'static ZmanPrimitive, &'static ZmanPrimitive, bool)
Sof zman biur chametz derived from two bounding ZmanPrimitives.
SofZmanAchilasChametz(&'static ZmanPrimitive, &'static ZmanPrimitive, bool)
Sof zman achilas chametz derived from two bounding ZmanPrimitives.
TzaisAteretTorah
Tzais according to the shita of Yeshivas Ateret Torah
SofZmanKidushLevana15Days
The latest time of Kiddush Levana calculated as 15 days after the molad.
SofZmanKidushLevanaBetweenMoldos
The latest time of Kiddush Levana according to the the opinion of the Maharil that it is calculated as halfway between molad and molad.
TchilasZmanKidushLevana3Days
The earliest time of Kiddush Levana according to Rabbeinu Yonahs opinion that it can be said 3 days after the molad.
TchilasZmanKidushLevana7Days
The earliest time of Kiddush Levana according to the opinions that it should not be said until 7 days after the molad.
BainHashmashosRt2Stars
Bain hashmashos (Rabbeinu Tam, 2-stars): sunset + (sunrise - alos19.8°) * 5/18.
MinchaGedolaAhavatShalom
Mincha gedola (Ahavat Shalom): later of chatzos + 30m and chatzos + 1/2 shaah.
MinchaGedolaGraGreaterThan30
Mincha gedola GRA, but no earlier than 30 minutes after chatzos.
MinchaKetanaAhavatShalom
Mincha ketana (Ahavat Shalom): 2.5 shaos zmaniyos before tzais 3.8° (day = alos16.1° → tzais3.8°).
PlagAhavatShalom
Plag hamincha (Ahavat Shalom): 1.25 shaos zmaniyos before tzais 3.8° (day = alos16.1° → tzais3.8°).
BeginCivilTwilight
The beginning of civil twilight (dawn), when the sun is 6° below the geometric horizon (96° zenith).
EndCivilTwilight
The end of civil twilight, when the sun is 6° below the geometric horizon (96° zenith).
BeginNauticalTwilight
The beginning of nautical twilight, when the sun is 12° below the geometric horizon (102° zenith).
EndNauticalTwilight
The end of nautical twilight, when the sun is 12° below the geometric horizon (102° zenith).
BeginAstronomicalTwilight
The beginning of astronomical twilight, when the sun is 18° below the geometric horizon (108° zenith).
EndAstronomicalTwilight
The end of astronomical twilight, when the sun is 18° below the geometric horizon (108° zenith).
SunsetOrWesternmostSolarAzimuth
Configured sunset, or the westernmost solar azimuth when sunset does not occur.
SunriseOrEasternmostSolarAzimuth
Configured sunrise, or the easternmost solar azimuth when sunrise does not occur.
Trait Implementations§
Source§impl Clone for ZmanPrimitive
impl Clone for ZmanPrimitive
Source§fn clone(&self) -> ZmanPrimitive
fn clone(&self) -> ZmanPrimitive
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ZmanPrimitive
impl Debug for ZmanPrimitive
Source§impl Format for ZmanPrimitive
Available on crate feature defmt only.
impl Format for ZmanPrimitive
defmt only.Source§impl ZmanLike for ZmanPrimitive
impl ZmanLike for ZmanPrimitive
Source§fn calculate(
&self,
calculator: &ZmanimCalculator,
) -> Result<Timestamp, ZmanimError>
fn calculate( &self, calculator: &ZmanimCalculator, ) -> Result<Timestamp, ZmanimError>
Auto Trait Implementations§
impl Freeze for ZmanPrimitive
impl RefUnwindSafe for ZmanPrimitive
impl Send for ZmanPrimitive
impl Sync for ZmanPrimitive
impl Unpin for ZmanPrimitive
impl UnsafeUnpin for ZmanPrimitive
impl UnwindSafe for ZmanPrimitive
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<F, T> ConvertInto<T> for Fwhere
T: ConvertFrom<F>,
impl<F, T> ConvertInto<T> for Fwhere
T: ConvertFrom<F>,
Source§fn convert_into(self) -> T
fn convert_into(self) -> T
Self to a value of type T.Source§impl<F, T> ConvertTryFrom<F> for Twhere
F: ConvertInto<T>,
impl<F, T> ConvertTryFrom<F> for Twhere
F: ConvertInto<T>,
Source§type Error = Infallible
type Error = Infallible
Source§fn convert_try_from(value: F) -> Result<T, Infallible>
fn convert_try_from(value: F) -> Result<T, Infallible>
F to a value of type Self.Source§impl<F, T> ConvertTryInto<T> for Fwhere
T: ConvertTryFrom<F>,
impl<F, T> ConvertTryInto<T> for Fwhere
T: ConvertTryFrom<F>,
Source§type Error = <T as ConvertTryFrom<F>>::Error
type Error = <T as ConvertTryFrom<F>>::Error
Source§fn convert_try_into(self) -> Result<T, <T as ConvertTryFrom<F>>::Error>
fn convert_try_into(self) -> Result<T, <T as ConvertTryFrom<F>>::Error>
Self to a value of type T.