@@ -9,34 +9,30 @@ module Cryptol.Eval.FFI
99 , evalForeignDecls
1010 ) where
1111
12- import Cryptol.Eval.FFI.ForeignSrc
13- ( ForeignSrc )
14- #ifdef FFI_ENABLED
15- import Cryptol.Eval.FFI.ForeignSrc
16- (ForeignImpl , loadForeignImpl )
17- #else
18- import Cryptol.Parser.AST (ForeignMode )
19- #endif
20- import Cryptol.Eval.FFI.Error ( FFILoadError )
21- import Cryptol.Eval (Eval , EvalEnv )
22- import Cryptol.TypeCheck.AST
23- ( FFI (.. ), TVar (TVBound ), findForeignDecls )
24- import Cryptol.TypeCheck.FFI.FFIType ( FFIFunType (.. ) )
12+ import Cryptol.Eval.FFI.ForeignSrc (ForeignSrc )
13+ import Cryptol.Eval.FFI.Error (FFILoadError )
14+ import Cryptol.Eval (Eval , EvalEnv )
15+ import Cryptol.ModuleSystem.Name (Name )
16+ import Cryptol.TypeCheck.AST (FFI (.. ), findForeignDecls )
2517
2618#ifdef FFI_ENABLED
2719
28- import Data.Either (partitionEithers )
29- import Data.Traversable (for )
30- import Cryptol.Backend.Concrete
31- import Cryptol.Backend.Monad
32- import Cryptol.Eval.Env
33- import Cryptol.Eval.Prims
34- import Cryptol.Eval.Type
35- import Cryptol.Eval.Value
36- import Cryptol.ModuleSystem.Name
37- import Cryptol.Utils.Ident
38- import Cryptol.Eval.FFI.C (callForeignC )
39- import Cryptol.Eval.FFI.Abstract (callForeignAbstract )
20+ import Data.Either (partitionEithers )
21+ import Data.Traversable (for )
22+
23+ import Cryptol.Backend.Concrete (Concrete )
24+ import Cryptol.Backend.Monad (io )
25+ import Cryptol.Eval.Env (bindVarDirect )
26+ import Cryptol.Eval.FFI.Abstract (callForeignAbstract )
27+ import Cryptol.Eval.FFI.C (callForeignC )
28+ import Cryptol.Eval.FFI.ForeignSrc (ForeignImpl , loadForeignImpl )
29+ import Cryptol.Eval.Prims (Prim (.. ))
30+ import Cryptol.Eval.Type (TypeEnv , bindTypeVar )
31+ import Cryptol.Eval.Value (GenValue , Backend (SEval ))
32+ import Cryptol.ModuleSystem.Name (nameIdent )
33+ import Cryptol.TypeCheck.AST (TVar (TVBound ))
34+ import Cryptol.TypeCheck.FFI.FFIType (FFIFunType (.. ))
35+ import Cryptol.Utils.Ident (unpackIdent )
4036
4137#endif
4238
@@ -70,7 +66,7 @@ foreignPrimPoly cc name impl =
7066foreignPrim ::
7167 FFIFunType t ->
7268 (TypeEnv -> [(t ,GenValue s )] -> SEval s (GenValue s )) ->
73- Prim s
69+ Prim s
7470foreignPrim ft k = buildNumPoly (ffiTParams ft) mempty
7571 where
7672 buildNumPoly (tp: tps) tenv = PNumPoly \ n ->
@@ -90,4 +86,4 @@ evalForeignDecls :: ForeignSrc -> [(Name, FFI)] -> EvalEnv ->
9086 Eval ([FFILoadError ], EvalEnv )
9187evalForeignDecls _ _ env = pure ([] , env)
9288
93- #endif
89+ #endif
0 commit comments