From 1cbbef19afcf997315431e3aa45f824fe8a8a0e7 Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Sun, 8 Sep 2024 02:08:13 +0200 Subject: Stub the implementation for all phases --- lib/Language/Elna/NameAnalysis.hs | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) (limited to 'lib/Language/Elna/NameAnalysis.hs') diff --git a/lib/Language/Elna/NameAnalysis.hs b/lib/Language/Elna/NameAnalysis.hs index 0034628..78b3ce4 100644 --- a/lib/Language/Elna/NameAnalysis.hs +++ b/lib/Language/Elna/NameAnalysis.hs @@ -1,8 +1,22 @@ module Language.Elna.NameAnalysis - ( Error(..) - , nameAnalysis + ( nameAnalysis + -- , Error(..) ) where +import qualified Language.Elna.AST as AST +import Language.Elna.SymbolTable + ( SymbolTable + , empty + --, Info(..) + -- , ParameterInfo(..) + ) + +nameAnalysis :: AST.Program -> SymbolTable -- Either Error SymbolTable +nameAnalysis = const empty {- runExcept + . flip runReaderT builtInSymbolTable + . runNameAnalysis + . program -} +{- import Control.Monad.Trans.Except (Except, runExcept, throwE) import Control.Monad.Trans.Reader ( ReaderT(..) @@ -12,14 +26,7 @@ import Control.Monad.Trans.Reader , withReaderT ) import Data.Functor ((<&>)) -import qualified Language.Elna.AST as AST import Language.Elna.Location (Identifier(..)) -import Language.Elna.SymbolTable - ( Info(..) - , ParameterInfo(..) - , SymbolTable - , builtInSymbolTable - ) import qualified Language.Elna.SymbolTable as SymbolTable import Language.Elna.Types (Type(..)) import Control.Monad.Trans.Class (MonadTrans(..)) @@ -53,12 +60,6 @@ instance Monad NameAnalysis where (NameAnalysis x) >>= f = NameAnalysis $ x >>= (runNameAnalysis . f) -nameAnalysis :: AST.Program -> Either Error SymbolTable -nameAnalysis = runExcept - . flip runReaderT builtInSymbolTable - . runNameAnalysis - . program - program :: AST.Program -> NameAnalysis SymbolTable program (AST.Program declarations) = NameAnalysis ask @@ -206,3 +207,4 @@ dataType (AST.NamedType baseType) = do _ -> NameAnalysis $ lift $ throwE $ UndefinedTypeError baseType dataType (AST.ArrayType arraySize baseType) = dataType baseType <&> ArrayType arraySize +-} -- cgit v1.2.3