2005-09-03 04:45:14 +00:00

35 lines
845 B
Haskell

module Load where
import API
import System.Plugins
testload = do
s <- make "../Plugin1.hs" ["-i../api"]
o1 <- case s of
MakeSuccess _ o -> return o
MakeFailure e -> mapM_ putStrLn e >> fail "o1"
s <- make "../Sub/Plugin2.hs" ["-i../api"]
o2 <- case s of
MakeSuccess _ o -> return o
MakeFailure e -> mapM_ putStrLn e >> fail "o2"
fc <- pdynload o1 ["..","../api"] [] "API.PluginAPI" "action"
case fc of
LoadFailure msg -> mapM_ putStrLn msg
LoadSuccess modul proc -> do
let ac :: API.PluginAPI; ac = proc
let s = proc 42
print s
print o2
fc <- pdynload o2 ["..","../api"] [] "API.PluginAPI" "action"
case fc of
LoadFailure msg -> mapM_ putStrLn msg
LoadSuccess modul proc -> do
let ac :: API.PluginAPI; ac = proc
let s = proc 42
print s