Show
Ignore:
Timestamp:
08/01/08 13:56:05 (5 months ago)
Author:
audreyt
Message:

* Import Pugs 6.2.13.11 from Hackage into our source tree.
* Highlights:

  • Much faster startup time
  • Slightly faster compilation time (mostly due to refactored Pugs.AST.Internals)
  • Portable-to-Win32 readline thanks to Haskeline
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • src/Pugs/Embed/Perl5.hs

    r16444 r21673  
    1 {-# OPTIONS_GHC -fglasgow-exts -cpp -fvia-C -optc-w #-} 
     1{-# OPTIONS_GHC -fglasgow-exts -cpp -optc-w #-} 
    22 
    33#ifndef PUGS_HAVE_PERL5 
     
    1313import System.Directory 
    1414import Pugs.Internals  
    15 import qualified UTF8 as Str 
     15import qualified Data.ByteString.UTF8 as Str 
    1616 
    1717evalPCR :: FilePath -> String -> String -> [(String, String)] -> IO String 
     
    187187import Foreign.C.String 
    188188import {-# SOURCE #-} Pugs.AST.Internals 
    189 import qualified UTF8 as Str 
     189import qualified Data.ByteString.UTF8 as Str 
     190import qualified Data.ByteString.Char8 as Buf 
    190191import qualified Pugs.Val as Val 
    191192 
     
    296297 
    297298vstrToSV :: String -> IO PerlSV 
    298 vstrToSV str = Str.useAsCStringLen (cast str) $ \(cstr, len) -> perl5_newSVpvn cstr (toEnum len) 
     299vstrToSV str = Buf.useAsCStringLen (cast str) $ \(cstr, len) -> perl5_newSVpvn cstr (toEnum len) 
    299300 
    300301bufToSV :: ByteString -> IO PerlSV 
    301 bufToSV str = Str.useAsCStringLen str $ \(cstr, len) -> perl5_newSVpvn cstr (toEnum len) 
     302bufToSV str = Buf.useAsCStringLen str $ \(cstr, len) -> perl5_newSVpvn cstr (toEnum len) 
    302303 
    303304vintToSV :: (Integral a) => a -> IO PerlSV 
     
    330331             
    331332canPerl5 :: PerlSV -> ByteString -> IO Bool 
    332 canPerl5 sv meth = Str.useAsCString meth $ \cstr -> perl5_can sv cstr 
     333canPerl5 sv meth = Buf.useAsCString meth $ \cstr -> perl5_can sv cstr 
    333334 
    334335mkSV :: IO PerlSV -> IO PerlSV 
     
    342343 
    343344evalPerl5 :: String -> PugsEnv -> CInt -> IO PerlSV 
    344 evalPerl5 str env cxt = mkSV $ Str.useAsCString (cast str) $ \cstr -> perl5_eval cstr env cxt 
     345evalPerl5 str env cxt = mkSV $ Buf.useAsCString (cast str) $ \cstr -> perl5_eval cstr env cxt 
    345346 
    346347freePerl5 :: PerlInterpreter -> IO ()