fix: add BaseType and correct PairElemType nodes
This commit is contained in:
parent
373683b592
commit
1c0907f610
@ -150,19 +150,18 @@ object ast {
|
||||
|
||||
// Types
|
||||
sealed trait Type
|
||||
case object IntType extends Type with ParserBridge0[IntType.type]
|
||||
case object BoolType extends Type with ParserBridge0[BoolType.type]
|
||||
case object CharType extends Type with ParserBridge0[CharType.type]
|
||||
case object StringType extends Type with ParserBridge0[StringType.type]
|
||||
case class ArrayType(elemType: Type) extends Type
|
||||
sealed trait BaseType extends Type with PairElemType
|
||||
case object IntType extends BaseType with ParserBridge0[IntType.type]
|
||||
case object BoolType extends BaseType with ParserBridge0[BoolType.type]
|
||||
case object CharType extends BaseType with ParserBridge0[CharType.type]
|
||||
case object StringType extends BaseType with ParserBridge0[StringType.type]
|
||||
case class ArrayType(elemType: Type) extends Type with PairElemType
|
||||
object ArrayType extends ParserBridge1[Type, ArrayType]
|
||||
case class PairType(fst: PairElemType, snd: PairElemType) extends Type
|
||||
object PairType extends ParserBridge2[PairElemType, PairElemType, PairType]
|
||||
|
||||
sealed trait PairElemType
|
||||
case object PairBaseType
|
||||
case object UntypedPairType
|
||||
extends PairElemType
|
||||
with ParserBridge0[PairBaseType.type]
|
||||
case class PairArrayType(baseType: Type) extends PairElemType
|
||||
object PairArrayType extends ParserBridge1[Type, PairArrayType]
|
||||
with ParserBridge0[UntypedPairType.type]
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user