module Hsed.Sed
( execScript
, execScript_
, SedScript
) where
import Control.Monad (when)
import qualified Control.Monad.State as S
import Data.List (isPrefixOf)
import qualified Data.ByteString.Char8 as B
import Hsed.StreamEd (runSed)
import Hsed.SedState
type SedScript = String
execScript :: [FilePath] -> SedScript -> IO B.ByteString
execScript files script = do
env <- runSed files script (initEnv {useMemSpace_ = True})
return $ memorySpace_ env
execScript_ :: [FilePath] -> SedScript -> IO ()
execScript_ files script = do
runSed files script initEnv
return ()