Switch parser typechecking; Add TODO.md

This commit is contained in:
Yehowshua Immanuel 2024-12-08 20:37:10 -05:00
parent 6de594c621
commit 8a197b25a1
3 changed files with 95 additions and 18 deletions

View file

@ -134,14 +134,14 @@ data AssignStmt = AssignStmt DestSigSpec SrcSigSpec
deriving (Show)
-- Switches
data Switch = Switch SwitchStmt [AttrStmt] [Case]
data Switch = Switch SwitchStmt [Case]
deriving (Show)
data SwitchStmt = SwitchStmt SigSpec [AttrStmt] deriving (Show)
data Case = Case CaseStmt [AttrStmt] [AssignStmt] CaseBody
data Case = Case CaseStmt [AttrStmt] CaseBody
deriving (Show)
data CaseStmt = CaseStmt (Maybe Compare)
deriving (Show)
data Compare = Compare SigSpec [SigSpec]
data Compare = Compare [SigSpec]
deriving (Show)
data CaseBodyVariants = CaseBodySwitchVariant Switch
| CaseBodyAssignVariant AssignStmt