| Copyright | (c) Justin Le 2019 |
|---|---|
| License | BSD3 |
| Maintainer | justin@jle.im |
| Stability | experimental |
| Portability | non-portable |
| Safe Haskell | None |
| Language | Haskell2010 |
Advent.Types
Description
Data types used for the underlying API.
Since: 0.2.3.0
Synopsis
- newtype Day = Day {}
- data Part
- data SubmitInfo = SubmitInfo {}
- data SubmitRes
- = SubCorrect (Maybe Integer)
- | SubIncorrect Int (Maybe String)
- | SubWait Int
- | SubInvalid
- | SubUnknown String
- showSubmitRes :: SubmitRes -> String
- newtype PublicCode = PublicCode {}
- data Leaderboard = LB {}
- data LeaderboardMember = LBM {}
- newtype Rank = Rank {}
- data DailyLeaderboard = DLB {}
- data DailyLeaderboardMember = DLBM {}
- newtype GlobalLeaderboard = GLB {}
- data GlobalLeaderboardMember = GLBM {}
- data NextDayTime
- mkDay :: Integer -> Maybe Day
- mkDay_ :: Integer -> Day
- dayInt :: Day -> Integer
- _DayInt :: (Choice p, Applicative f) => p Day (f Day) -> p Integer (f Integer)
- pattern DayInt :: Day -> Integer
- partInt :: Part -> Int
- partChar :: Part -> Char
- fullDailyBoard :: DailyLeaderboard -> Bool
- dlbmCompleteTime :: Integer -> Day -> NominalDiffTime -> ZonedTime
- dlbmTime :: Day -> NominalDiffTime -> NominalDiffTime
- challengeReleaseTime :: Integer -> Day -> ZonedTime
- parseSubmitRes :: Text -> SubmitRes
Types
Describes the day: a number between 1 and 25 inclusive.
Represented by a Finite ranging from 0 to 24 inclusive; you should
probably make one using the smart constructor mkDay.
Instances
| FromJSON Day Source # | |||||
Defined in Advent.Types | |||||
| FromJSONKey Day Source # | |||||
Defined in Advent.Types | |||||
| ToJSON Day Source # | Since: 0.2.4.2 | ||||
| ToJSONKey Day Source # | Since: 0.2.4.2 | ||||
Defined in Advent.Types | |||||
| Bounded Day Source # | |||||
| Enum Day Source # | |||||
| Generic Day Source # | |||||
Defined in Advent.Types Associated Types
| |||||
| Show Day Source # | |||||
| Eq Day Source # | |||||
| Ord Day Source # | |||||
| ToHttpApiData Day Source # | |||||
Defined in Advent.Types Methods toUrlPiece :: Day -> Text # toEncodedUrlPiece :: Day -> Builder # toHeader :: Day -> ByteString # toQueryParam :: Day -> Text # toEncodedQueryParam :: Day -> Builder # | |||||
| type Rep Day Source # | |||||
Defined in Advent.Types | |||||
A given part of a problem. All Advent of Code challenges are two-parts.
You can usually get Part1 (if it is already released) with a nonsense
session key, but Part2 always requires a valid session key.
Instances
| FromJSON Part Source # | |
Defined in Advent.Types | |
| FromJSONKey Part Source # | |
Defined in Advent.Types | |
| ToJSON Part Source # | Since: 0.2.4.2 |
| ToJSONKey Part Source # | Since: 0.2.4.2 |
Defined in Advent.Types | |
| Bounded Part Source # | |
| Enum Part Source # | |
| Generic Part Source # | |
Defined in Advent.Types | |
| Read Part Source # | |
| Show Part Source # | |
| Eq Part Source # | |
| Ord Part Source # | |
| ToHttpApiData Part Source # | |
Defined in Advent.Types Methods toUrlPiece :: Part -> Text # toEncodedUrlPiece :: Part -> Builder # toHeader :: Part -> ByteString # toQueryParam :: Part -> Text # toEncodedQueryParam :: Part -> Builder # | |
| type Rep Part Source # | |
data SubmitInfo Source #
Info required to submit an answer for a part.
Constructors
| SubmitInfo | |
Instances
The result of a submission.
Constructors
| SubCorrect (Maybe Integer) | Correct submission, including global rank (if reported, which usually happens if rank is under 1000) |
| SubIncorrect Int (Maybe String) | Incorrect submission. Contains the number of seconds you must
wait before trying again. The |
| SubWait Int | Submission was rejected because an incorrect submission was recently submitted. Contains the number of seconds you must wait before trying again. |
| SubInvalid | Submission was rejected because it was sent to an invalid question or part. Usually happens if you submit to a part you have already answered or have not yet unlocked. |
| SubUnknown String | Could not parse server response. Contains parse error. |
Instances
| Generic SubmitRes Source # | |||||
Defined in Advent.Types Associated Types
| |||||
| Read SubmitRes Source # | |||||
| Show SubmitRes Source # | |||||
| Eq SubmitRes Source # | |||||
| Ord SubmitRes Source # | |||||
| FromTags "article" SubmitRes Source # | |||||
| type Rep SubmitRes Source # | |||||
Defined in Advent.Types type Rep SubmitRes = D1 ('MetaData "SubmitRes" "Advent.Types" "advent-of-code-api-0.2.10.0-GDpGQWnuigY7hDWzYKT21Q" 'False) ((C1 ('MetaCons "SubCorrect" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Integer))) :+: C1 ('MetaCons "SubIncorrect" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))) :+: (C1 ('MetaCons "SubWait" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)) :+: (C1 ('MetaCons "SubInvalid" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SubUnknown" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))) | |||||
newtype PublicCode Source #
Member ID of public leaderboard (the first part of the registration code, before the hyphen). It can be found as the number in the URL:
https://adventofcode.com/2019/leaderboard/private/view/12345
(the 12345 above)
Constructors
| PublicCode | |
Fields | |
Instances
| Generic PublicCode Source # | |||||
Defined in Advent.Types Associated Types
| |||||
| Read PublicCode Source # | |||||
Defined in Advent.Types Methods readsPrec :: Int -> ReadS PublicCode # readList :: ReadS [PublicCode] # readPrec :: ReadPrec PublicCode # readListPrec :: ReadPrec [PublicCode] # | |||||
| Show PublicCode Source # | |||||
Defined in Advent.Types Methods showsPrec :: Int -> PublicCode -> ShowS # show :: PublicCode -> String # showList :: [PublicCode] -> ShowS # | |||||
| Eq PublicCode Source # | |||||
Defined in Advent.Types | |||||
| Ord PublicCode Source # | |||||
Defined in Advent.Types Methods compare :: PublicCode -> PublicCode -> Ordering # (<) :: PublicCode -> PublicCode -> Bool # (<=) :: PublicCode -> PublicCode -> Bool # (>) :: PublicCode -> PublicCode -> Bool # (>=) :: PublicCode -> PublicCode -> Bool # max :: PublicCode -> PublicCode -> PublicCode # min :: PublicCode -> PublicCode -> PublicCode # | |||||
| ToHttpApiData PublicCode Source # | |||||
Defined in Advent.Types Methods toUrlPiece :: PublicCode -> Text # toEncodedUrlPiece :: PublicCode -> Builder # toHeader :: PublicCode -> ByteString # toQueryParam :: PublicCode -> Text # | |||||
| type Rep PublicCode Source # | |||||
Defined in Advent.Types type Rep PublicCode = D1 ('MetaData "PublicCode" "Advent.Types" "advent-of-code-api-0.2.10.0-GDpGQWnuigY7hDWzYKT21Q" 'True) (C1 ('MetaCons "PublicCode" 'PrefixI 'True) (S1 ('MetaSel ('Just "getPublicCode") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer))) | |||||
data Leaderboard Source #
Leaderboard type, representing private leaderboard information.
Constructors
| LB | |
Instances
| FromJSON Leaderboard Source # | |||||
Defined in Advent.Types | |||||
| Generic Leaderboard Source # | |||||
Defined in Advent.Types Associated Types
| |||||
| Show Leaderboard Source # | |||||
Defined in Advent.Types Methods showsPrec :: Int -> Leaderboard -> ShowS # show :: Leaderboard -> String # showList :: [Leaderboard] -> ShowS # | |||||
| Eq Leaderboard Source # | |||||
Defined in Advent.Types | |||||
| Ord Leaderboard Source # | |||||
Defined in Advent.Types Methods compare :: Leaderboard -> Leaderboard -> Ordering # (<) :: Leaderboard -> Leaderboard -> Bool # (<=) :: Leaderboard -> Leaderboard -> Bool # (>) :: Leaderboard -> Leaderboard -> Bool # (>=) :: Leaderboard -> Leaderboard -> Bool # max :: Leaderboard -> Leaderboard -> Leaderboard # min :: Leaderboard -> Leaderboard -> Leaderboard # | |||||
| type Rep Leaderboard Source # | |||||
Defined in Advent.Types type Rep Leaderboard = D1 ('MetaData "Leaderboard" "Advent.Types" "advent-of-code-api-0.2.10.0-GDpGQWnuigY7hDWzYKT21Q" 'False) (C1 ('MetaCons "LB" 'PrefixI 'True) (S1 ('MetaSel ('Just "lbEvent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer) :*: (S1 ('MetaSel ('Just "lbOwnerId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer) :*: S1 ('MetaSel ('Just "lbMembers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Integer LeaderboardMember))))) | |||||
data LeaderboardMember Source #
Leaderboard position for a given member.
Constructors
| LBM | |
Fields
| |
Instances
| FromJSON LeaderboardMember Source # | |||||
Defined in Advent.Types Methods parseJSON :: Value -> Parser LeaderboardMember # parseJSONList :: Value -> Parser [LeaderboardMember] # | |||||
| Generic LeaderboardMember Source # | |||||
Defined in Advent.Types Associated Types
Methods from :: LeaderboardMember -> Rep LeaderboardMember x # to :: Rep LeaderboardMember x -> LeaderboardMember # | |||||
| Show LeaderboardMember Source # | |||||
Defined in Advent.Types Methods showsPrec :: Int -> LeaderboardMember -> ShowS # show :: LeaderboardMember -> String # showList :: [LeaderboardMember] -> ShowS # | |||||
| Eq LeaderboardMember Source # | |||||
Defined in Advent.Types Methods (==) :: LeaderboardMember -> LeaderboardMember -> Bool # (/=) :: LeaderboardMember -> LeaderboardMember -> Bool # | |||||
| Ord LeaderboardMember Source # | |||||
Defined in Advent.Types Methods compare :: LeaderboardMember -> LeaderboardMember -> Ordering # (<) :: LeaderboardMember -> LeaderboardMember -> Bool # (<=) :: LeaderboardMember -> LeaderboardMember -> Bool # (>) :: LeaderboardMember -> LeaderboardMember -> Bool # (>=) :: LeaderboardMember -> LeaderboardMember -> Bool # max :: LeaderboardMember -> LeaderboardMember -> LeaderboardMember # min :: LeaderboardMember -> LeaderboardMember -> LeaderboardMember # | |||||
| type Rep LeaderboardMember Source # | |||||
Defined in Advent.Types type Rep LeaderboardMember = D1 ('MetaData "LeaderboardMember" "Advent.Types" "advent-of-code-api-0.2.10.0-GDpGQWnuigY7hDWzYKT21Q" 'False) (C1 ('MetaCons "LBM" 'PrefixI 'True) ((S1 ('MetaSel ('Just "lbmGlobalScore") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Integer)) :*: (S1 ('MetaSel ('Just "lbmName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "lbmLocalScore") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer))) :*: ((S1 ('MetaSel ('Just "lbmId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer) :*: S1 ('MetaSel ('Just "lbmLastStarTS") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe UTCTime))) :*: (S1 ('MetaSel ('Just "lbmStars") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Just "lbmCompletion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Day (Map Part UTCTime))))))) | |||||
Ranking between 1 to 100, for daily and global leaderboards
Note that getRank interanlly stores a number from 0 to 99, so be sure
to add or subtract accordingly if you want to display or parse it.
Since: 0.2.3.0
Instances
| FromJSON Rank Source # | |||||
Defined in Advent.Types | |||||
| FromJSONKey Rank Source # | |||||
Defined in Advent.Types | |||||
| ToJSON Rank Source # | |||||
| ToJSONKey Rank Source # | |||||
Defined in Advent.Types | |||||
| Generic Rank Source # | |||||
Defined in Advent.Types Associated Types
| |||||
| Show Rank Source # | |||||
| Eq Rank Source # | |||||
| Ord Rank Source # | |||||
| type Rep Rank Source # | |||||
Defined in Advent.Types | |||||
data DailyLeaderboard Source #
Daily leaderboard, containing Star 1 and Star 2 completions
Since: 0.2.3.0
Constructors
| DLB | |
Fields | |
Instances
| FromJSON DailyLeaderboard Source # | |||||
Defined in Advent.Types Methods parseJSON :: Value -> Parser DailyLeaderboard # parseJSONList :: Value -> Parser [DailyLeaderboard] # | |||||
| ToJSON DailyLeaderboard Source # | |||||
Defined in Advent.Types Methods toJSON :: DailyLeaderboard -> Value # toEncoding :: DailyLeaderboard -> Encoding # toJSONList :: [DailyLeaderboard] -> Value # toEncodingList :: [DailyLeaderboard] -> Encoding # omitField :: DailyLeaderboard -> Bool # | |||||
| Generic DailyLeaderboard Source # | |||||
Defined in Advent.Types Associated Types
Methods from :: DailyLeaderboard -> Rep DailyLeaderboard x # to :: Rep DailyLeaderboard x -> DailyLeaderboard # | |||||
| Show DailyLeaderboard Source # | |||||
Defined in Advent.Types Methods showsPrec :: Int -> DailyLeaderboard -> ShowS # show :: DailyLeaderboard -> String # showList :: [DailyLeaderboard] -> ShowS # | |||||
| Eq DailyLeaderboard Source # | |||||
Defined in Advent.Types Methods (==) :: DailyLeaderboard -> DailyLeaderboard -> Bool # (/=) :: DailyLeaderboard -> DailyLeaderboard -> Bool # | |||||
| Ord DailyLeaderboard Source # | |||||
Defined in Advent.Types Methods compare :: DailyLeaderboard -> DailyLeaderboard -> Ordering # (<) :: DailyLeaderboard -> DailyLeaderboard -> Bool # (<=) :: DailyLeaderboard -> DailyLeaderboard -> Bool # (>) :: DailyLeaderboard -> DailyLeaderboard -> Bool # (>=) :: DailyLeaderboard -> DailyLeaderboard -> Bool # max :: DailyLeaderboard -> DailyLeaderboard -> DailyLeaderboard # min :: DailyLeaderboard -> DailyLeaderboard -> DailyLeaderboard # | |||||
| FromTags "div" DailyLeaderboard Source # | |||||
Defined in Advent.API | |||||
| type Rep DailyLeaderboard Source # | |||||
Defined in Advent.Types type Rep DailyLeaderboard = D1 ('MetaData "DailyLeaderboard" "Advent.Types" "advent-of-code-api-0.2.10.0-GDpGQWnuigY7hDWzYKT21Q" 'False) (C1 ('MetaCons "DLB" 'PrefixI 'True) (S1 ('MetaSel ('Just "dlbStar1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Rank DailyLeaderboardMember)) :*: S1 ('MetaSel ('Just "dlbStar2") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Rank DailyLeaderboardMember)))) | |||||
data DailyLeaderboardMember Source #
Single daily leaderboard position
Since: 0.2.3.0
Constructors
| DLBM | |
Fields
| |
Instances
| FromJSON DailyLeaderboardMember Source # | |||||
Defined in Advent.Types Methods parseJSON :: Value -> Parser DailyLeaderboardMember # parseJSONList :: Value -> Parser [DailyLeaderboardMember] # | |||||
| ToJSON DailyLeaderboardMember Source # | |||||
Defined in Advent.Types Methods toJSON :: DailyLeaderboardMember -> Value # toEncoding :: DailyLeaderboardMember -> Encoding # toJSONList :: [DailyLeaderboardMember] -> Value # toEncodingList :: [DailyLeaderboardMember] -> Encoding # omitField :: DailyLeaderboardMember -> Bool # | |||||
| Generic DailyLeaderboardMember Source # | |||||
Defined in Advent.Types Associated Types
Methods from :: DailyLeaderboardMember -> Rep DailyLeaderboardMember x # to :: Rep DailyLeaderboardMember x -> DailyLeaderboardMember # | |||||
| Show DailyLeaderboardMember Source # | |||||
Defined in Advent.Types Methods showsPrec :: Int -> DailyLeaderboardMember -> ShowS # show :: DailyLeaderboardMember -> String # showList :: [DailyLeaderboardMember] -> ShowS # | |||||
| Eq DailyLeaderboardMember Source # | |||||
Defined in Advent.Types Methods (==) :: DailyLeaderboardMember -> DailyLeaderboardMember -> Bool # (/=) :: DailyLeaderboardMember -> DailyLeaderboardMember -> Bool # | |||||
| Ord DailyLeaderboardMember Source # | |||||
Defined in Advent.Types Methods compare :: DailyLeaderboardMember -> DailyLeaderboardMember -> Ordering # (<) :: DailyLeaderboardMember -> DailyLeaderboardMember -> Bool # (<=) :: DailyLeaderboardMember -> DailyLeaderboardMember -> Bool # (>) :: DailyLeaderboardMember -> DailyLeaderboardMember -> Bool # (>=) :: DailyLeaderboardMember -> DailyLeaderboardMember -> Bool # max :: DailyLeaderboardMember -> DailyLeaderboardMember -> DailyLeaderboardMember # min :: DailyLeaderboardMember -> DailyLeaderboardMember -> DailyLeaderboardMember # | |||||
| type Rep DailyLeaderboardMember Source # | |||||
Defined in Advent.Types type Rep DailyLeaderboardMember = D1 ('MetaData "DailyLeaderboardMember" "Advent.Types" "advent-of-code-api-0.2.10.0-GDpGQWnuigY7hDWzYKT21Q" 'False) (C1 ('MetaCons "DLBM" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dlbmRank") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Rank) :*: (S1 ('MetaSel ('Just "dlbmDecTime") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 NominalDiffTime) :*: S1 ('MetaSel ('Just "dlbmUser") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Either Integer Text)))) :*: (S1 ('MetaSel ('Just "dlbmLink") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "dlbmImage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "dlbmSupporter") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))))) | |||||
newtype GlobalLeaderboard Source #
Global leaderboard for the entire event
Under each Rank is an Integer for the score at that rank, as well as
a non-empty list of all members who achieved that rank and score.
Since: 0.2.3.0
Instances
| FromJSON GlobalLeaderboard Source # | |||||
Defined in Advent.Types Methods parseJSON :: Value -> Parser GlobalLeaderboard # parseJSONList :: Value -> Parser [GlobalLeaderboard] # | |||||
| ToJSON GlobalLeaderboard Source # | |||||
Defined in Advent.Types Methods toJSON :: GlobalLeaderboard -> Value # toEncoding :: GlobalLeaderboard -> Encoding # toJSONList :: [GlobalLeaderboard] -> Value # toEncodingList :: [GlobalLeaderboard] -> Encoding # omitField :: GlobalLeaderboard -> Bool # | |||||
| Generic GlobalLeaderboard Source # | |||||
Defined in Advent.Types Associated Types
Methods from :: GlobalLeaderboard -> Rep GlobalLeaderboard x # to :: Rep GlobalLeaderboard x -> GlobalLeaderboard # | |||||
| Show GlobalLeaderboard Source # | |||||
Defined in Advent.Types Methods showsPrec :: Int -> GlobalLeaderboard -> ShowS # show :: GlobalLeaderboard -> String # showList :: [GlobalLeaderboard] -> ShowS # | |||||
| Eq GlobalLeaderboard Source # | |||||
Defined in Advent.Types Methods (==) :: GlobalLeaderboard -> GlobalLeaderboard -> Bool # (/=) :: GlobalLeaderboard -> GlobalLeaderboard -> Bool # | |||||
| Ord GlobalLeaderboard Source # | |||||
Defined in Advent.Types Methods compare :: GlobalLeaderboard -> GlobalLeaderboard -> Ordering # (<) :: GlobalLeaderboard -> GlobalLeaderboard -> Bool # (<=) :: GlobalLeaderboard -> GlobalLeaderboard -> Bool # (>) :: GlobalLeaderboard -> GlobalLeaderboard -> Bool # (>=) :: GlobalLeaderboard -> GlobalLeaderboard -> Bool # max :: GlobalLeaderboard -> GlobalLeaderboard -> GlobalLeaderboard # min :: GlobalLeaderboard -> GlobalLeaderboard -> GlobalLeaderboard # | |||||
| FromTags "div" GlobalLeaderboard Source # | |||||
Defined in Advent.API | |||||
| type Rep GlobalLeaderboard Source # | |||||
Defined in Advent.Types type Rep GlobalLeaderboard = D1 ('MetaData "GlobalLeaderboard" "Advent.Types" "advent-of-code-api-0.2.10.0-GDpGQWnuigY7hDWzYKT21Q" 'True) (C1 ('MetaCons "GLB" 'PrefixI 'True) (S1 ('MetaSel ('Just "glbMap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Rank (Integer, NonEmpty GlobalLeaderboardMember))))) | |||||
data GlobalLeaderboardMember Source #
Single global leaderboard position
Since: 0.2.3.0
Constructors
| GLBM | |
Instances
| FromJSON GlobalLeaderboardMember Source # | |||||
Defined in Advent.Types Methods parseJSON :: Value -> Parser GlobalLeaderboardMember # parseJSONList :: Value -> Parser [GlobalLeaderboardMember] # | |||||
| ToJSON GlobalLeaderboardMember Source # | |||||
Defined in Advent.Types Methods toJSON :: GlobalLeaderboardMember -> Value # toEncoding :: GlobalLeaderboardMember -> Encoding # toJSONList :: [GlobalLeaderboardMember] -> Value # | |||||
| Generic GlobalLeaderboardMember Source # | |||||
Defined in Advent.Types Associated Types
Methods from :: GlobalLeaderboardMember -> Rep GlobalLeaderboardMember x # to :: Rep GlobalLeaderboardMember x -> GlobalLeaderboardMember # | |||||
| Show GlobalLeaderboardMember Source # | |||||
Defined in Advent.Types Methods showsPrec :: Int -> GlobalLeaderboardMember -> ShowS # show :: GlobalLeaderboardMember -> String # showList :: [GlobalLeaderboardMember] -> ShowS # | |||||
| Eq GlobalLeaderboardMember Source # | |||||
Defined in Advent.Types Methods (==) :: GlobalLeaderboardMember -> GlobalLeaderboardMember -> Bool # (/=) :: GlobalLeaderboardMember -> GlobalLeaderboardMember -> Bool # | |||||
| Ord GlobalLeaderboardMember Source # | |||||
Defined in Advent.Types Methods compare :: GlobalLeaderboardMember -> GlobalLeaderboardMember -> Ordering # (<) :: GlobalLeaderboardMember -> GlobalLeaderboardMember -> Bool # (<=) :: GlobalLeaderboardMember -> GlobalLeaderboardMember -> Bool # (>) :: GlobalLeaderboardMember -> GlobalLeaderboardMember -> Bool # (>=) :: GlobalLeaderboardMember -> GlobalLeaderboardMember -> Bool # max :: GlobalLeaderboardMember -> GlobalLeaderboardMember -> GlobalLeaderboardMember # min :: GlobalLeaderboardMember -> GlobalLeaderboardMember -> GlobalLeaderboardMember # | |||||
| type Rep GlobalLeaderboardMember Source # | |||||
Defined in Advent.Types type Rep GlobalLeaderboardMember = D1 ('MetaData "GlobalLeaderboardMember" "Advent.Types" "advent-of-code-api-0.2.10.0-GDpGQWnuigY7hDWzYKT21Q" 'False) (C1 ('MetaCons "GLBM" 'PrefixI 'True) ((S1 ('MetaSel ('Just "glbmRank") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Rank) :*: (S1 ('MetaSel ('Just "glbmScore") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer) :*: S1 ('MetaSel ('Just "glbmUser") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Either Integer Text)))) :*: (S1 ('MetaSel ('Just "glbmLink") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "glbmImage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "glbmSupporter") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))))) | |||||
data NextDayTime Source #
The next day for a challenge in a given year, and also the number of seconds until the challenge is released.
Since: 0.2.8.0
Constructors
| NextDayTime Day Int | |
| NoNextDayTime |
Instances
| Generic NextDayTime Source # | |||||
Defined in Advent.Types Associated Types
| |||||
| Show NextDayTime Source # | |||||
Defined in Advent.Types Methods showsPrec :: Int -> NextDayTime -> ShowS # show :: NextDayTime -> String # showList :: [NextDayTime] -> ShowS # | |||||
| Eq NextDayTime Source # | |||||
Defined in Advent.Types | |||||
| Ord NextDayTime Source # | |||||
Defined in Advent.Types Methods compare :: NextDayTime -> NextDayTime -> Ordering # (<) :: NextDayTime -> NextDayTime -> Bool # (<=) :: NextDayTime -> NextDayTime -> Bool # (>) :: NextDayTime -> NextDayTime -> Bool # (>=) :: NextDayTime -> NextDayTime -> Bool # max :: NextDayTime -> NextDayTime -> NextDayTime # min :: NextDayTime -> NextDayTime -> NextDayTime # | |||||
| FromTags "script" NextDayTime Source # | |||||
Defined in Advent.API | |||||
| type Rep NextDayTime Source # | |||||
Defined in Advent.Types type Rep NextDayTime = D1 ('MetaData "NextDayTime" "Advent.Types" "advent-of-code-api-0.2.10.0-GDpGQWnuigY7hDWzYKT21Q" 'False) (C1 ('MetaCons "NextDayTime" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Day) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)) :+: C1 ('MetaCons "NoNextDayTime" 'PrefixI 'False) (U1 :: Type -> Type)) | |||||
Util
fullDailyBoard :: DailyLeaderboard -> Bool Source #
Check if a DailyLeaderboard is filled up or not.
Since: 0.2.4.0
dlbmCompleteTime :: Integer -> Day -> NominalDiffTime -> ZonedTime Source #
Turn a dlbmDecTime field into a ZonedTime for the actual
completion of the puzzle, based on the year and day of event.
Since: 0.2.7.0
dlbmTime :: Day -> NominalDiffTime -> NominalDiffTime Source #
Turn a dlbmDecTime field into a NominalDiffTime representing the
actual amount of time taken to complete the puzzle.
Since: 0.2.7.0
Prompt release time.
Changed from UTCTime to ZonedTime in v0.2.7.0. To use as
a UTCTime, use zonedTimeToUTC.