{-# LANGUAGE Safe #-}moduleData.Time.Calendar.CalendarDiffDays(-- * Calendar DurationmoduleData.Time.Calendar.CalendarDiffDays ,)whereimportControl.DeepSeqimportData.DatadataCalendarDiffDays =CalendarDiffDays {CalendarDiffDays -> Integer
cdMonths ::Integer,CalendarDiffDays -> Integer
cdDays ::Integer}deriving(CalendarDiffDays -> CalendarDiffDays -> Bool
(CalendarDiffDays -> CalendarDiffDays -> Bool)
-> (CalendarDiffDays -> CalendarDiffDays -> Bool)
-> Eq CalendarDiffDays
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CalendarDiffDays -> CalendarDiffDays -> Bool
$c/= :: CalendarDiffDays -> CalendarDiffDays -> Bool
== :: CalendarDiffDays -> CalendarDiffDays -> Bool
$c== :: CalendarDiffDays -> CalendarDiffDays -> Bool
Eq,-- | @since 1.9.2Data,-- | @since 1.9.2Typeable)instanceNFDataCalendarDiffDays wherernf :: CalendarDiffDays -> ()
rnf(CalendarDiffDays Integer
m Integer
d )=Integer -> ()
forall a. NFData a => a -> ()
rnfInteger
m () -> () -> ()
`seq`Integer -> ()
forall a. NFData a => a -> ()
rnfInteger
d () -> () -> ()
`seq`()-- | AdditiveinstanceSemigroupCalendarDiffDays whereCalendarDiffDays Integer
m1 Integer
d1 <> :: CalendarDiffDays -> CalendarDiffDays -> CalendarDiffDays
<>CalendarDiffDays Integer
m2 Integer
d2 =Integer -> Integer -> CalendarDiffDays
CalendarDiffDays (Integer
m1 Integer -> Integer -> Integer
forall a. Num a => a -> a -> a
+Integer
m2 )(Integer
d1 Integer -> Integer -> Integer
forall a. Num a => a -> a -> a
+Integer
d2 )-- | AdditiveinstanceMonoidCalendarDiffDays wheremempty :: CalendarDiffDays
mempty=Integer -> Integer -> CalendarDiffDays
CalendarDiffDays Integer
0Integer
0mappend :: CalendarDiffDays -> CalendarDiffDays -> CalendarDiffDays
mappend=CalendarDiffDays -> CalendarDiffDays -> CalendarDiffDays
forall a. Semigroup a => a -> a -> a
(<>)instanceShowCalendarDiffDays whereshow :: CalendarDiffDays -> String
show(CalendarDiffDays Integer
m Integer
d )=String
"P"String -> ShowS
forall a. [a] -> [a] -> [a]
++Integer -> String
forall a. Show a => a -> String
showInteger
m String -> ShowS
forall a. [a] -> [a] -> [a]
++String
"M"String -> ShowS
forall a. [a] -> [a] -> [a]
++Integer -> String
forall a. Show a => a -> String
showInteger
d String -> ShowS
forall a. [a] -> [a] -> [a]
++String
"D"calendarDay ::CalendarDiffDays calendarDay :: CalendarDiffDays
calendarDay =Integer -> Integer -> CalendarDiffDays
CalendarDiffDays Integer
0Integer
1calendarWeek ::CalendarDiffDays calendarWeek :: CalendarDiffDays
calendarWeek =Integer -> Integer -> CalendarDiffDays
CalendarDiffDays Integer
0Integer
7calendarMonth ::CalendarDiffDays calendarMonth :: CalendarDiffDays
calendarMonth =Integer -> Integer -> CalendarDiffDays
CalendarDiffDays Integer
1Integer
0calendarYear ::CalendarDiffDays calendarYear :: CalendarDiffDays
calendarYear =Integer -> Integer -> CalendarDiffDays
CalendarDiffDays Integer
12Integer
0-- | Scale by a factor. Note that @scaleCalendarDiffDays (-1)@ will not perfectly invert a duration, due to variable month lengths.scaleCalendarDiffDays ::Integer->CalendarDiffDays ->CalendarDiffDays scaleCalendarDiffDays :: Integer -> CalendarDiffDays -> CalendarDiffDays
scaleCalendarDiffDays Integer
k (CalendarDiffDays Integer
m Integer
d )=Integer -> Integer -> CalendarDiffDays
CalendarDiffDays (Integer
k Integer -> Integer -> Integer
forall a. Num a => a -> a -> a
*Integer
m )(Integer
k Integer -> Integer -> Integer
forall a. Num a => a -> a -> a
*Integer
d )

AltStyle によって変換されたページ (->オリジナル) /