Update examples

This commit is contained in:
Don Stewart
2005-09-03 04:45:14 +00:00
parent 5321754614
commit dff0363224
421 changed files with 19 additions and 9 deletions

View File

@ -0,0 +1,5 @@
TEST=pdynload/poly
TOP=../../..
include ../../build.mk

View File

@ -0,0 +1,9 @@
module Plugin where
import Data.Generics.Schemes
import API
resource = rsrc {
field = id listify
}

View File

@ -0,0 +1,12 @@
{-# OPTIONS -fglasgow-exts #-}
-- a really nasty type:
module API where
import Data.Generics
data Interface = Interface { field :: Typeable r => (r -> Bool) -> GenericQ [r] }
rsrc :: Interface
rsrc = Interface { field = listify }

View File

@ -0,0 +1,17 @@
import System.Plugins
import API
src = "../Plugin.hs"
wrap = "../Wrapper.hs"
apipath = "../api"
main = do status <- make src ["-i"++apipath]
case status of
MakeSuccess _ _ -> f
MakeFailure e -> mapM_ putStrLn e
where f = do v <- pdynload "../Plugin.o" ["../api"] [] "API.Interface" "resource"
case v of
LoadSuccess _ a -> putStrLn "loaded .. yay!"
_ -> putStrLn "wrong types"

View File

@ -0,0 +1 @@
loaded .. yay!