module SkelDep where -- Haskell module generated by the BNF converter import AbsDep import ErrM type Result = Err String failure :: Show a => a -> Result failure x = Bad $ "Undefined case: " ++ show x transIdent :: Ident -> Result transIdent x = case x of Ident str -> failure x transModule :: Module -> Result transModule x = case x of Module imports decls -> failure x transImport :: Import -> Result transImport x = case x of Import id -> failure x transDecl :: Decl -> Result transDecl x = case x of TypeDecl id eexp -> failure x PattDecl id patterns eexp -> failure x transPattern :: Pattern -> Result transPattern x = case x of PCons id patterns -> failure x PVar id -> failure x PType -> failure x PWild -> failure x transEExp :: EExp -> Result transEExp x = case x of ELet id eexp0 eexp1 eexp -> failure x EAbs id eexp -> failure x EPi id eexp0 eexp -> failure x EApp eexp0 eexp -> failure x EVar id -> failure x EType -> failure x EMeta -> failure x