feat: more error messages

This commit is contained in:
Guy C 2025-02-04 03:32:52 +00:00
parent 3c23654356
commit 4e50ed35ba

View File

@ -119,9 +119,13 @@ object ast {
case class Print(expr: Expr, newline: Boolean) extends Stmt case class Print(expr: Expr, newline: Boolean) extends Stmt
object Print extends ParserBridge2[Expr, Boolean, Print] object Print extends ParserBridge2[Expr, Boolean, Print]
case class If(cond: Expr, thenStmt: NonEmptyList[Stmt], elseStmt: NonEmptyList[Stmt]) extends Stmt case class If(cond: Expr, thenStmt: NonEmptyList[Stmt], elseStmt: NonEmptyList[Stmt]) extends Stmt
object If extends ParserBridge3[Expr, NonEmptyList[Stmt], NonEmptyList[Stmt], If] object If extends ParserBridge3[Expr, NonEmptyList[Stmt], NonEmptyList[Stmt], If] {
override def labels = List("if statement")
}
case class While(cond: Expr, body: NonEmptyList[Stmt]) extends Stmt case class While(cond: Expr, body: NonEmptyList[Stmt]) extends Stmt
object While extends ParserBridge2[Expr, NonEmptyList[Stmt], While] object While extends ParserBridge2[Expr, NonEmptyList[Stmt], While] {
override def labels = List("while statement")
}
case class Block(stmt: NonEmptyList[Stmt]) extends Stmt case class Block(stmt: NonEmptyList[Stmt]) extends Stmt
object Block extends ParserBridge1[NonEmptyList[Stmt], Block] object Block extends ParserBridge1[NonEmptyList[Stmt], Block]