]> ruin.nu Git - proglang.git/blobdiff - Skelsyntax.hs
minor change
[proglang.git] / Skelsyntax.hs
index 07898ef6d2aa24e4e2ff417f75af2b21268368cb..7efec8512f8ca8ea0c89e36a68268106dfd05fe4 100644 (file)
@@ -20,14 +20,27 @@ transBool x = case x of
   False  -> failure x
 
 
+transType :: Type -> Result
+transType x = case x of
+  TInt  -> failure x
+  TBool  -> failure x
+
+
+transProgram :: Program -> Result
+transProgram x = case x of
+  Program funcstms  -> failure x
+
+
 transStm :: Stm -> Result
 transStm x = case x of
-  SDecl type' id exp  -> failure x
   SExp exp  -> failure x
   SBlock stms  -> failure x
-  SIf exp stm0 stm  -> failure x
+  SDecl type' id exp  -> failure x
+  SDeclD type' id  -> failure x
   SWhile exp stm  -> failure x
+  SIf exp stm0 stm  -> failure x
   SPrint exp  -> failure x
+  SReturn exp  -> failure x
   SNoop  -> failure x
 
 
@@ -36,20 +49,30 @@ transExp x = case x of
   EAss id exp  -> failure x
   EVar id  -> failure x
   EInt n  -> failure x
+  EBool bool  -> failure x
   ENeg exp  -> failure x
   ENot exp  -> failure x
-  EBool bool  -> failure x
   EReadI  -> failure x
   EReadB  -> failure x
-  ExpT type' exp  -> failure x
-  EDefault  -> failure x
+  EFunc id exps  -> failure x
   BiOpExp exp0 op exp  -> failure x
   EPost id op  -> failure x
 
 
-transStms :: Stms -> Result
-transStms x = case x of
-  Program stms  -> failure x
+transDecl :: Decl -> Result
+transDecl x = case x of
+  Decl type' id  -> failure x
+
+
+transFunc :: Func -> Result
+transFunc x = case x of
+  Func type' id decls stms  -> failure x
+
+
+transFuncStm :: FuncStm -> Result
+transFuncStm x = case x of
+  S stm  -> failure x
+  F func  -> failure x
 
 
 transOp :: Op -> Result
@@ -66,11 +89,4 @@ transOp x = case x of
   Div  -> failure x
 
 
-transType :: Type -> Result
-transType x = case x of
-  TInt  -> failure x
-  TBool  -> failure x
-  NoType  -> failure x
-
-