aboutsummaryrefslogtreecommitdiff
path: root/AST.hs
diff options
context:
space:
mode:
Diffstat (limited to 'AST.hs')
-rw-r--r--AST.hs12
1 files changed, 9 insertions, 3 deletions
diff --git a/AST.hs b/AST.hs
index 7a76208..b42f1af 100644
--- a/AST.hs
+++ b/AST.hs
@@ -42,7 +42,7 @@ data Statement
data AsExpression
= AEVar Name (Maybe Type)
| AESubscript AsExpression Expression (Maybe Type)
- -- | AESet
+ | AEGet AsExpression Name (Maybe Type)
deriving (Show, Eq)
data Expression
@@ -206,10 +206,16 @@ instance Pretty Expression where
instance Pretty AsExpression where
prettyI i (AEVar n (Just t)) =
"(" ++ prettyI i (AEVar n Nothing) ++ " :: " ++ prettyI i t ++ ")"
- prettyI _ (AEVar n Nothing) = n
+ prettyI _ (AEVar n Nothing) =
+ n
prettyI i (AESubscript ae e (Just t)) =
"(" ++ prettyI i (AESubscript ae e Nothing) ++ " :: " ++ prettyI i t ++ ")"
- prettyI i (AESubscript ae e Nothing) = prettyI i ae ++ "[" ++ prettyI i e ++ "]"
+ prettyI i (AESubscript ae e Nothing) =
+ prettyI i ae ++ "[" ++ prettyI i e ++ "]"
+ prettyI i (AEGet ae n (Just t)) =
+ "(" ++ prettyI i (AEGet ae n Nothing) ++ " :: " ++ prettyI i t ++ ")"
+ prettyI i (AEGet ae n Nothing) =
+ prettyI i ae ++ "." ++ n
instance Pretty BinaryOp where
prettyI _ BOAdd = "+"