|
1 |
| -{-# LANGUAGE ExplicitForAll, StandaloneDeriving, DuplicateRecordFields, ScopedTypeVariables, InstanceSigs, KindSignatures, GADTs, FlexibleContexts, RankNTypes, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, AllowAmbiguousTypes, TypeOperators |
2 |
| -,LiberalTypeSynonyms, ImpredicativeTypes, UndecidableInstances, FunctionalDependencies #-} |
| 1 | +{-# LANGUAGE AllowAmbiguousTypes #-} |
| 2 | +{-# LANGUAGE DataKinds #-} |
| 3 | +{-# LANGUAGE DuplicateRecordFields #-} |
| 4 | +{-# LANGUAGE ExplicitForAll #-} |
| 5 | +{-# LANGUAGE FlexibleContexts #-} |
| 6 | +{-# LANGUAGE FlexibleInstances #-} |
| 7 | +{-# LANGUAGE FunctionalDependencies #-} |
| 8 | +{-# LANGUAGE GADTs #-} |
| 9 | +{-# LANGUAGE ImpredicativeTypes #-} |
| 10 | +{-# LANGUAGE InstanceSigs #-} |
| 11 | +{-# LANGUAGE LiberalTypeSynonyms #-} |
| 12 | +{-# LANGUAGE MultiParamTypeClasses #-} |
| 13 | +{-# LANGUAGE RankNTypes #-} |
| 14 | +{-# LANGUAGE ScopedTypeVariables #-} |
| 15 | +{-# LANGUAGE TypeOperators #-} |
| 16 | +{-# LANGUAGE TypeSynonymInstances #-} |
| 17 | +{-# LANGUAGE UndecidableInstances #-} |
3 | 18 |
|
4 | 19 | module Language.AQL where
|
5 | 20 |
|
6 |
| -import Prelude hiding (EQ,exp) |
7 |
| -import qualified Data.Map.Strict as Map |
8 |
| -import Language.Graph |
9 |
| -import Language.Common as C |
10 |
| -import Language.Term as Term |
11 |
| -import Language.Schema as S |
12 |
| -import Language.Instance as I |
13 |
| -import Language.Mapping as M |
14 |
| -import Language.Typeside as T |
15 |
| -import Language.Transform as Tr |
16 |
| -import Language.Query as Q |
17 |
| -import Data.List (nub) |
18 |
| -import Data.Maybe |
19 |
| -import Language.Parser (parseAqlProgram) |
20 |
| -import Language.Program as P |
21 |
| -import Data.Typeable |
22 |
| -import Language.Options |
23 |
| -import System.IO.Unsafe |
24 |
| -import Control.DeepSeq |
25 |
| -import Control.Concurrent |
26 |
| -import Control.Exception |
| 21 | +import Control.Concurrent |
| 22 | +import Control.DeepSeq |
| 23 | +import Control.Exception |
| 24 | +import Data.List (nub) |
| 25 | +import qualified Data.Map.Strict as Map |
| 26 | +import Data.Maybe |
| 27 | +import Data.Typeable |
| 28 | +import Language.Common as C |
| 29 | +import Language.Graph |
| 30 | +import Language.Instance as I |
| 31 | +import Language.Mapping as M |
| 32 | +import Language.Options |
| 33 | +import Language.Parser (parseAqlProgram) |
| 34 | +import Language.Program as P |
| 35 | +import Language.Query as Q |
| 36 | +import Language.Schema as S |
| 37 | +import Language.Term as Term |
| 38 | +import Language.Transform as Tr |
| 39 | +import Language.Typeside as T |
| 40 | +import Prelude hiding (EQ) |
| 41 | +import System.IO.Unsafe |
27 | 42 |
|
28 | 43 | -- | Timesout a computation after @i@ microseconds.
|
29 | 44 | timeout' :: NFData x => Integer -> Err x -> Err x
|
@@ -258,7 +273,7 @@ getKindCtx g v k = case k of
|
258 | 273 | MAPPING -> fmap ExpM $ n $ Map.lookup v $ mappings g
|
259 | 274 | TRANSFORM -> fmap ExpT $ n $ Map.lookup v $ transforms g
|
260 | 275 | QUERY -> fmap ExpQ $ n $ Map.lookup v $ queries g
|
261 |
| - _ -> error "todo" |
| 276 | + _ -> error "todo" |
262 | 277 | where
|
263 | 278 | n :: forall x. Maybe x -> Err x
|
264 | 279 | n x = note ("Undefined " ++ show k ++ ": " ++ v) x
|
@@ -333,7 +348,7 @@ evalTypeside p e (TypesideRaw r) = do
|
333 | 348 | evalTypesideRaw (other e) r x
|
334 | 349 |
|
335 | 350 | evalTypeside _ env (TypesideVar v) = case Map.lookup v $ typesides env of
|
336 |
| - Nothing -> Left $ "Undefined typeside: " ++ show v |
| 351 | + Nothing -> Left $ "Undefined typeside: " ++ show v |
337 | 352 | Just (TypesideEx e) -> Right $ TypesideEx e
|
338 | 353 |
|
339 | 354 | evalTypeside _ _ TypesideSql = pure $ TypesideEx $ sqlTypeside
|
|
0 commit comments