Changeset 3859 for src/Pugs/Embed/Perl5.hs
- Timestamp:
- 05/25/05 04:50:59 (4 years ago)
- svk:copy_cache_prev:
- 5385
- Files:
-
- 1 modified
-
src/Pugs/Embed/Perl5.hs (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Pugs/Embed/Perl5.hs
r3852 r3859 14 14 15 15 evalPerl5 :: String -> IO PerlSV 16 evalPerl5 _ = return ()16 evalPerl5 _ = fail "perl5 not embedded" 17 17 18 18 freePerl5 :: PerlInterpreter -> IO () 19 19 freePerl5 _ = return () 20 20 21 svToVStr :: PerlSV -> IO a 22 svToVStr _ = fail "not implemented" 21 svToVStr :: PerlSV -> IO String 22 svToVStr _ = fail "perl5 not embedded" 23 24 callPerl5 :: String -> [PerlSV] -> IO PerlSV 25 callPerl5 _ _ = fail "perl5 not embedded" 23 26 24 27 #else … … 50 53 foreign import ccall "perl5.h perl5_SvPV" 51 54 perl5_SvPV :: PerlSV -> IO CString 55 foreign import ccall "perl5.h perl5_call" 56 perl5_call :: CString -> CInt -> Ptr PerlSV -> IO PerlSV 52 57 foreign import ccall "perl5.h perl5_init" 53 58 perl5_init :: CInt -> Ptr CString -> IO PerlInterpreter … … 61 66 svToVStr :: PerlSV -> IO String 62 67 svToVStr sv = peekCString =<< perl5_SvPV sv 68 69 callPerl5 :: String -> [PerlSV] -> IO PerlSV 70 callPerl5 str args = do 71 withCString str $ \cstr -> do 72 withArray args $ \argv -> do 73 perl5_call cstr (toEnum $ length args) argv 63 74 64 75 evalPerl5 :: String -> IO PerlSV
