Changeset 7866 for src/Pugs/CodeGen/PIL2.hs
- Timestamp:
- 11/06/05 01:28:07 (3 years ago)
- Files:
-
- 1 modified
-
src/Pugs/CodeGen/PIL2.hs (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Pugs/CodeGen/PIL2.hs
r7849 r7866 2 2 {-# OPTIONS_GHC -#include "../../UnicodeC.h" #-} 3 3 4 module Pugs.CodeGen.PIL2 (genPIL2) where 4 module Pugs.CodeGen.PIL2 ( 5 genPIL2, 6 genPIL2Perl5, genPIL2Binary, genPIL2JSON 7 ) where 5 8 import Pugs.Internals 6 9 import Pugs.AST 7 import Pugs.PIL1 8 import Pugs.Compile 10 import Pugs.PIL2 11 import Pugs.Compile.PIL2 12 import System.IO 13 import System.Directory 14 import DrIFT.Perl5 15 import DrIFT.Binary 16 import DrIFT.JSON 9 17 10 18 genPIL2 :: Eval Val … … 17 25 , " }" 18 26 ] 27 28 genPIL2Perl5 :: Eval Val 29 genPIL2Perl5 = do 30 penv <- compile () :: Eval PIL_Environment 31 return . VStr . unlines $ [showPerl5 penv] 32 33 genPIL2Binary :: Eval Val 34 genPIL2Binary = do 35 penv <- compile () :: Eval PIL_Environment 36 liftIO $ do 37 tmp <- getTemporaryDirectory 38 (file, fh) <- openBinaryTempFile tmp "pugs.bin" 39 bh <- openBinIO fh 40 put_ bh penv 41 hClose fh 42 return $ VStr (unlines [file]) 43 44 genPIL2JSON :: Eval Val 45 genPIL2JSON = do 46 penv <- compile () :: Eval PIL_Environment 47 return . VStr . unlines $ [showJSON penv]
