From ac70a5f9aebcfd51901740681463d1ac4fa90e33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roman=20Smr=C5=BE?= Date: Sun, 29 Jun 2025 22:20:10 +0200 Subject: Explicit JobSet ID --- src/Job/Types.hs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/Job/Types.hs') diff --git a/src/Job/Types.hs b/src/Job/Types.hs index 4024317..ad575a1 100644 --- a/src/Job/Types.hs +++ b/src/Job/Types.hs @@ -55,13 +55,18 @@ data ArtifactName = ArtifactName Text data JobSet' d = JobSet - { jobsetCommit :: Maybe Commit + { jobsetId :: JobSetId' d + , jobsetCommit :: Maybe Commit , jobsetJobsEither :: Either String [ Job' d ] } type JobSet = JobSet' Evaluated type DeclaredJobSet = JobSet' Declared +type family JobSetId' d :: Type where + JobSetId' Declared = () + JobSetId' Evaluated = JobSetId + jobsetJobs :: JobSet -> [ Job ] jobsetJobs = either (const []) id . jobsetJobsEither @@ -69,6 +74,9 @@ jobsetJobs = either (const []) id . jobsetJobsEither newtype JobId = JobId [ JobIdPart ] deriving (Eq, Ord) +newtype JobSetId = JobSetId [ JobIdPart ] + deriving (Eq, Ord) + data JobIdPart = JobIdName JobName | JobIdCommit (Maybe RepoName) CommitId -- cgit v1.2.3