thyme-0.3.5.5: A faster time library

Safe Haskell | None
Language | Haskell2010

Data.Thyme.Calendar.WeekdayOfMonth

# Documentation

type Year = Int Source #

type Month = Int Source #

type DayOfWeek = Int Source #

pattern MV_WeekdayOfMonth :: (MVector s Int) -> MVector s WeekdayOfMonth Source #

pattern V_WeekdayOfMonth :: (Vector Int) -> Vector WeekdayOfMonth Source #

data WeekdayOfMonth Source #

Constructors

WeekdayOfMonth |

Fields

- womYear :: !Year
- womMonth :: !Month
- womNth :: !Int

  ±1–5, negative means n-th last

- womDayOfWeek :: !DayOfWeek

Instances

Bounded WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth Methods minBound :: WeekdayOfMonth Source # maxBound :: WeekdayOfMonth Source #
Eq WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth Methods (==) :: WeekdayOfMonth -> WeekdayOfMonth -> Bool Source # (/=) :: WeekdayOfMonth -> WeekdayOfMonth -> Bool Source #
Data WeekdayOfMonth Source # |

Instance details

Defined in Data.Thyme.Calendar.WeekdayOfMonth

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WeekdayOfMonth -> c WeekdayOfMonth Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c WeekdayOfMonth Source #

toConstr :: WeekdayOfMonth -> Constr Source #

dataTypeOf :: WeekdayOfMonth -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c WeekdayOfMonth) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WeekdayOfMonth) Source #

gmapT :: (forall b. Data b => b -> b) -> WeekdayOfMonth -> WeekdayOfMonth Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WeekdayOfMonth -> r Source #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WeekdayOfMonth -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> WeekdayOfMonth -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WeekdayOfMonth -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WeekdayOfMonth -> m WeekdayOfMonth Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WeekdayOfMonth -> m WeekdayOfMonth Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WeekdayOfMonth -> m WeekdayOfMonth Source #

Ord WeekdayOfMonth Source # |

Instance details

Defined in Data.Thyme.Calendar.WeekdayOfMonth

Methods

compare :: WeekdayOfMonth -> WeekdayOfMonth -> Ordering Source #

(<) :: WeekdayOfMonth -> WeekdayOfMonth -> Bool Source #

(<=) :: WeekdayOfMonth -> WeekdayOfMonth -> Bool Source #

(>) :: WeekdayOfMonth -> WeekdayOfMonth -> Bool Source #

(>=) :: WeekdayOfMonth -> WeekdayOfMonth -> Bool Source #

max :: WeekdayOfMonth -> WeekdayOfMonth -> WeekdayOfMonth Source #

min :: WeekdayOfMonth -> WeekdayOfMonth -> WeekdayOfMonth Source #

Show WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth Methods showsPrec :: Int -> WeekdayOfMonth -> ShowS Source # show :: WeekdayOfMonth -> String Source # showList :: [WeekdayOfMonth] -> ShowS Source #
Generic WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth Associated Types type Rep WeekdayOfMonth :: Type -> Type Source # Methods from :: WeekdayOfMonth -> Rep WeekdayOfMonth x Source # to :: Rep WeekdayOfMonth x -> WeekdayOfMonth Source #
Arbitrary WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth Methods arbitrary :: Gen WeekdayOfMonth Source # shrink :: WeekdayOfMonth -> [WeekdayOfMonth] Source #
CoArbitrary WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth Methods coarbitrary :: WeekdayOfMonth -> Gen b -> Gen b Source #
NFData WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth Methods rnf :: WeekdayOfMonth -> () Source #
Random WeekdayOfMonth Source # |

Instance details

Defined in Data.Thyme.Calendar.WeekdayOfMonth

Methods

randomR :: RandomGen g => (WeekdayOfMonth, WeekdayOfMonth) -> g -> (WeekdayOfMonth, g) Source #

random :: RandomGen g => g -> (WeekdayOfMonth, g) Source #

randomRs :: RandomGen g => (WeekdayOfMonth, WeekdayOfMonth) -> g -> [WeekdayOfMonth] Source #

randoms :: RandomGen g => g -> [WeekdayOfMonth] Source #

randomRIO :: (WeekdayOfMonth, WeekdayOfMonth) -> IO WeekdayOfMonth Source #

randomIO :: IO WeekdayOfMonth Source #

Unbox WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth
Vector Vector WeekdayOfMonth Source # |

Instance details

Defined in Data.Thyme.Calendar.WeekdayOfMonth

Methods

basicUnsafeFreeze :: PrimMonad m => Mutable Vector (PrimState m) WeekdayOfMonth -> m (Vector WeekdayOfMonth) Source #

basicUnsafeThaw :: PrimMonad m => Vector WeekdayOfMonth -> m (Mutable Vector (PrimState m) WeekdayOfMonth) Source #

basicLength :: Vector WeekdayOfMonth -> Int Source #

basicUnsafeSlice :: Int -> Int -> Vector WeekdayOfMonth -> Vector WeekdayOfMonth Source #

basicUnsafeIndexM :: Monad m => Vector WeekdayOfMonth -> Int -> m WeekdayOfMonth Source #

basicUnsafeCopy :: PrimMonad m => Mutable Vector (PrimState m) WeekdayOfMonth -> Vector WeekdayOfMonth -> m () Source #

elemseq :: Vector WeekdayOfMonth -> WeekdayOfMonth -> b -> b Source #

MVector MVector WeekdayOfMonth Source # |

Instance details

Defined in Data.Thyme.Calendar.WeekdayOfMonth

Methods

basicLength :: MVector s WeekdayOfMonth -> Int Source #

basicUnsafeSlice :: Int -> Int -> MVector s WeekdayOfMonth -> MVector s WeekdayOfMonth Source #

basicOverlaps :: MVector s WeekdayOfMonth -> MVector s WeekdayOfMonth -> Bool Source #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) WeekdayOfMonth) Source #

basicInitialize :: PrimMonad m => MVector (PrimState m) WeekdayOfMonth -> m () Source #

basicUnsafeReplicate :: PrimMonad m => Int -> WeekdayOfMonth -> m (MVector (PrimState m) WeekdayOfMonth) Source #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) WeekdayOfMonth -> Int -> m WeekdayOfMonth Source #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) WeekdayOfMonth -> Int -> WeekdayOfMonth -> m () Source #

basicClear :: PrimMonad m => MVector (PrimState m) WeekdayOfMonth -> m () Source #

basicSet :: PrimMonad m => MVector (PrimState m) WeekdayOfMonth -> WeekdayOfMonth -> m () Source #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) WeekdayOfMonth -> MVector (PrimState m) WeekdayOfMonth -> m () Source #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) WeekdayOfMonth -> MVector (PrimState m) WeekdayOfMonth -> m () Source #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) WeekdayOfMonth -> Int -> m (MVector (PrimState m) WeekdayOfMonth) Source #

type Rep WeekdayOfMonth Source # |

Instance details

Defined in Data.Thyme.Calendar.WeekdayOfMonth

type Rep WeekdayOfMonth = D1 (MetaData "WeekdayOfMonth" "Data.Thyme.Calendar.WeekdayOfMonth" "thyme-0.3.5.5-Fg1pPOWWkee1p55oP1P4W4" False) (C1 (MetaCons "WeekdayOfMonth" PrefixI True) ((S1 (MetaSel (Just "womYear") SourceUnpack SourceStrict DecidedStrict) (Rec0 Year) :*: S1 (MetaSel (Just "womMonth") SourceUnpack SourceStrict DecidedStrict) (Rec0 Month)) :*: (S1 (MetaSel (Just "womNth") SourceUnpack SourceStrict DecidedStrict) (Rec0 Int) :*: S1 (MetaSel (Just "womDayOfWeek") SourceUnpack SourceStrict DecidedStrict) (Rec0 DayOfWeek))))

newtype Vector WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth newtype Vector WeekdayOfMonth = V_WeekdayOfMonth (Vector Int)
newtype MVector s WeekdayOfMonth Source # |
Instance details Defined in Data.Thyme.Calendar.WeekdayOfMonth newtype MVector s WeekdayOfMonth = MV_WeekdayOfMonth (MVector s Int)

weekdayOfMonth :: Iso' Day WeekdayOfMonth Source #

weekdayOfMonthValid :: WeekdayOfMonth -> Maybe Day Source #

_womYear :: Lens' WeekdayOfMonth Year Source #

_womMonth :: Lens' WeekdayOfMonth Month Source #

_womNth :: Lens' WeekdayOfMonth Int Source #

_womDayOfWeek :: Lens' WeekdayOfMonth DayOfWeek Source #