on master help sign in
WIP tutd compilation checkpoint
commitf8e6f198d3d0d53b5ed6317e00362991b0959725 authorAgentM <agentm@themactionfaction.com> dateTue 31 Dec 2019, 22:09 (7 years ago) parent8c305bd
2 files changed+8−7
src/bin/TutorialD/Interpreter/Base.hs+1−1 src/bin/TutorialD/Interpreter/DatabaseContextExpr.hs+7−6
src/bin/TutorialD/Interpreter/Base.hs+1−1
@@ -211,5 +211,5 @@ utcTimeP = do
211211 timeStr <- quotedString
212212 case parseTimeM True defaultTimeLocale "%Y-%m-%d %H:%M:%S" (T.unpack timeStr) of
213213 Nothing -> fail "invalid datetime input, use \"YYYY-MM-DD HH:MM:SS\""
214− Just stamp -> pure stamp
214+ Just stamp' -> pure stamp'
215215
src/bin/TutorialD/Interpreter/DatabaseContextExpr.hs+7−6
@@ -5,7 +5,6 @@ import qualified Data.Text as T
55import TutorialD.Interpreter.RelationalExpr
66import TutorialD.Interpreter.Types
77import qualified Data.Map as M
8−import Control.Monad.State
98import ProjectM36.StaticOptimizer
109import qualified ProjectM36.Error as PM36E
1110import ProjectM36.Error
@@ -195,11 +194,13 @@ evalDatabaseContextExpr useOptimizer context expr = do
195194 (Left err, _) -> Left err
196195-}
197196
198−interpretDatabaseContextExpr :: DatabaseContext -> T.Text -> Either RelationalError DatabaseContext
199−interpretDatabaseContextExpr context tutdstring = case parse databaseExprOpP "" tutdstring of
200− Left err -> Left $ PM36E.ParseError (T.pack (show err))
201− Right parsed ->
202− evalDatabaseContextExpr True context parsed
197+interpretDatabaseContextExpr :: DatabaseContext -> TransactionId -> TransactionGraph -> T.Text -> Either RelationalError DatabaseContext
198+interpretDatabaseContextExpr context transId graph tutdstring =
199+ case parse databaseExprOpP "" tutdstring of
200+ Left err -> Left $ PM36E.ParseError (T.pack (show err))
201+ Right parsed -> do
202+ let env = RE.mkDatabaseContextEvalEnv transId graph
203+ RE.dbc_context <$> RE.runDatabaseContextEvalMonad context env (optimizeAndEvalDatabaseContextExpr True parsed)
203204
204205{-
205206--no optimization