hodatime
Copyright(C) 2017 Jason Johnson
LicenseBSD-style (see the file LICENSE)
MaintainerJason Johnson <jason.johnson.081@gmail.com>
Stabilityexperimental
PortabilityPOSIX, Windows
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.HodaTime.Calendar.Coptic

Description

This is the module for CalendarDate and CalendarDateTime in the Coptic calendar, the liturgical calendar of the Coptic Orthodox Church whose era of the Martyrs (Anno Martyrum) counts years from AD 284. The year is twelve months of 30 days followed by a short thirteenth month (PiKogiEnavot, the epagomenal days) of five days, or six in a leap year. Leap years follow the same simple every-fourth-year rule as Julian (a Coptic year is leap when year `mod` 4 == 3), with the extra day added at the end of the year. Year 1 begins on 29.Aug.284 in the Julian calendar; dates share the same absolute timeline as every other calendar.

Synopsis

Constructors

calendarDate :: DayOfMonth -> Month Coptic -> Year -> Maybe (CalendarDate Coptic) Source #

Smart constructor for a Coptic calendar date.

fromNthDay :: DayNth -> DayOfWeek Coptic -> Month Coptic -> Year -> Maybe (CalendarDate Coptic) Source #

Smart constructor for a Coptic calendar date given as a day relative to a month (e.g. the third Monday of the month). Returns Nothing if the resulting date is invalid.

fromWeekDate :: WeekNumber -> DayOfWeek Coptic -> Year -> Maybe (CalendarDate Coptic) Source #

Smart constructor for a Coptic calendar date given as a week date. Note that this method assumes weeks start on Sunday and the first week of the year is the one which has at least one day in the new year.

Types

data family Month cal Source #

Instances

Instances details
Bounded (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Bounded (Month Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Bounded (Month (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

minBound :: Month (Hebrew n) #

maxBound :: Month (Hebrew n) #

Bounded (Month (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Bounded (Month Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Bounded (Month Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Enum (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Enum (Month Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

KnownNumbering n => Enum (Month (Hebrew n)) Source #

The Month Enum is the one place the numbering shows: it is calendar order rotated so counting begins at the numbering's start month (numberingStart).

Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

succ :: Month (Hebrew n) -> Month (Hebrew n) #

pred :: Month (Hebrew n) -> Month (Hebrew n) #

toEnum :: Int -> Month (Hebrew n) #

fromEnum :: Month (Hebrew n) -> Int #

enumFrom :: Month (Hebrew n) -> [Month (Hebrew n)] #

enumFromThen :: Month (Hebrew n) -> Month (Hebrew n) -> [Month (Hebrew n)] #

enumFromTo :: Month (Hebrew n) -> Month (Hebrew n) -> [Month (Hebrew n)] #

enumFromThenTo :: Month (Hebrew n) -> Month (Hebrew n) -> Month (Hebrew n) -> [Month (Hebrew n)] #

Enum (Month (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Enum (Month Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Enum (Month Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Read (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Read (Month Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Read (Month (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Read (Month (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Read (Month Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Read (Month Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Show (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Show (Month Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Show (Month (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

showsPrec :: Int -> Month (Hebrew n) -> ShowS #

show :: Month (Hebrew n) -> String #

showList :: [Month (Hebrew n)] -> ShowS #

Show (Month (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Methods

showsPrec :: Int -> Month (Islamic l) -> ShowS #

show :: Month (Islamic l) -> String #

showList :: [Month (Islamic l)] -> ShowS #

Show (Month Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Show (Month Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

NFData (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Methods

rnf :: Month Coptic -> () #

NFData (Month Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Methods

rnf :: Month Gregorian -> () #

NFData (Month (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

rnf :: Month (Hebrew n) -> () #

NFData (Month (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Methods

rnf :: Month (Islamic l) -> () #

NFData (Month Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Methods

rnf :: Month Julian -> () #

NFData (Month Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Methods

rnf :: Month Persian -> () #

Eq (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Eq (Month Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Eq (Month (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

(==) :: Month (Hebrew n) -> Month (Hebrew n) -> Bool #

(/=) :: Month (Hebrew n) -> Month (Hebrew n) -> Bool #

Eq (Month (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Methods

(==) :: Month (Islamic l) -> Month (Islamic l) -> Bool #

(/=) :: Month (Islamic l) -> Month (Islamic l) -> Bool #

Eq (Month Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Eq (Month Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Ord (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Ord (Month Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Ord (Month (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

compare :: Month (Hebrew n) -> Month (Hebrew n) -> Ordering #

(<) :: Month (Hebrew n) -> Month (Hebrew n) -> Bool #

(<=) :: Month (Hebrew n) -> Month (Hebrew n) -> Bool #

(>) :: Month (Hebrew n) -> Month (Hebrew n) -> Bool #

(>=) :: Month (Hebrew n) -> Month (Hebrew n) -> Bool #

max :: Month (Hebrew n) -> Month (Hebrew n) -> Month (Hebrew n) #

min :: Month (Hebrew n) -> Month (Hebrew n) -> Month (Hebrew n) #

Ord (Month (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Methods

compare :: Month (Islamic l) -> Month (Islamic l) -> Ordering #

(<) :: Month (Islamic l) -> Month (Islamic l) -> Bool #

(<=) :: Month (Islamic l) -> Month (Islamic l) -> Bool #

(>) :: Month (Islamic l) -> Month (Islamic l) -> Bool #

(>=) :: Month (Islamic l) -> Month (Islamic l) -> Bool #

max :: Month (Islamic l) -> Month (Islamic l) -> Month (Islamic l) #

min :: Month (Islamic l) -> Month (Islamic l) -> Month (Islamic l) #

Ord (Month Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Ord (Month Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Hashable (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Hashable (Month Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

KnownNumbering n => Hashable (Month (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

hashWithSalt :: Int -> Month (Hebrew n) -> Int #

hash :: Month (Hebrew n) -> Int #

Hashable (Month (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Methods

hashWithSalt :: Int -> Month (Islamic l) -> Int #

hash :: Month (Islamic l) -> Int #

Hashable (Month Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Hashable (Month Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

data Month Coptic Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

data Month Gregorian Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

data Month Julian Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

data Month Persian Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

data Month (Hebrew n) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

data Month (Islamic l) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

data family DayOfWeek cal Source #

Instances

Instances details
Bounded (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Bounded (DayOfWeek Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Bounded (DayOfWeek (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Bounded (DayOfWeek (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Bounded (DayOfWeek Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Bounded (DayOfWeek Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Enum (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Enum (DayOfWeek Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Enum (DayOfWeek (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Enum (DayOfWeek (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Enum (DayOfWeek Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Enum (DayOfWeek Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Read (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Read (DayOfWeek Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Read (DayOfWeek (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Read (DayOfWeek (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Read (DayOfWeek Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Read (DayOfWeek Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Show (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Show (DayOfWeek Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Show (DayOfWeek (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Show (DayOfWeek (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Show (DayOfWeek Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Show (DayOfWeek Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

NFData (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Methods

rnf :: DayOfWeek Coptic -> () #

NFData (DayOfWeek Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Methods

rnf :: DayOfWeek Gregorian -> () #

NFData (DayOfWeek (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

rnf :: DayOfWeek (Hebrew n) -> () #

NFData (DayOfWeek (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Methods

rnf :: DayOfWeek (Islamic l) -> () #

NFData (DayOfWeek Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Methods

rnf :: DayOfWeek Julian -> () #

NFData (DayOfWeek Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Methods

rnf :: DayOfWeek Persian -> () #

Eq (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Eq (DayOfWeek Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Eq (DayOfWeek (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

(==) :: DayOfWeek (Hebrew n) -> DayOfWeek (Hebrew n) -> Bool #

(/=) :: DayOfWeek (Hebrew n) -> DayOfWeek (Hebrew n) -> Bool #

Eq (DayOfWeek (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Eq (DayOfWeek Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Eq (DayOfWeek Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Ord (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Ord (DayOfWeek Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Ord (DayOfWeek (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Ord (DayOfWeek (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Ord (DayOfWeek Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Ord (DayOfWeek Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

Hashable (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Hashable (DayOfWeek Gregorian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

Hashable (DayOfWeek (Hebrew n)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

Methods

hashWithSalt :: Int -> DayOfWeek (Hebrew n) -> Int #

hash :: DayOfWeek (Hebrew n) -> Int #

Hashable (DayOfWeek (Islamic l)) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

Hashable (DayOfWeek Julian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

Hashable (DayOfWeek Persian) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

data DayOfWeek Coptic Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

data DayOfWeek Gregorian Source # 
Instance details

Defined in Data.HodaTime.Calendar.Gregorian.Internal

data DayOfWeek Julian Source # 
Instance details

Defined in Data.HodaTime.Calendar.Julian

data DayOfWeek Persian Source # 
Instance details

Defined in Data.HodaTime.Calendar.Persian

data DayOfWeek (Hebrew n) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Hebrew

data DayOfWeek (Islamic l) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Islamic

data Coptic Source #

Instances

Instances details
IsCalendar Coptic Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Associated Types

data Date Coptic

data DayOfWeek Coptic Source #

data Month Coptic Source #

Methods

fromDays :: Int32 -> Date Coptic

toDays :: Date Coptic -> Int32

toYmd :: Date Coptic -> (Int32, Word8, Word8)

calendarName :: Date Coptic -> String

day' :: Date Coptic -> DayOfMonth

setDay' :: DayOfMonth -> Date Coptic -> Date Coptic

month' :: Date Coptic -> Month Coptic

setMonthIndex' :: Int -> Date Coptic -> Date Coptic

year' :: Date Coptic -> Year

setYear' :: Year -> Date Coptic -> Date Coptic

dayOfWeek' :: Date Coptic -> DayOfWeek Coptic

next' :: Int -> DayOfWeek Coptic -> Date Coptic -> Date Coptic

previous' :: Int -> DayOfWeek Coptic -> Date Coptic -> Date Coptic

Bounded (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Bounded (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Enum (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Enum (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Read (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Read (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Show (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Show (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

NFData (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Methods

rnf :: DayOfWeek Coptic -> () #

NFData (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Methods

rnf :: Month Coptic -> () #

Eq (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Eq (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Ord (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Ord (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Hashable (DayOfWeek Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

Hashable (Month Coptic) Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

data DayOfWeek Coptic Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic

data Month Coptic Source # 
Instance details

Defined in Data.HodaTime.Calendar.Coptic