pugs-compat 0.0.1 → 0.0.2
raw patch · 4 files changed
+28/−8 lines, 4 filesdep +regex-basedep +regex-pcre-builtin
Dependencies added: regex-base, regex-pcre-builtin
Files
- pugs-compat.cabal +5/−6
- src/Pugs/Compat.hs +4/−0
- src/Pugs/Compat/ID.hs +10/−2
- src/Pugs/Compat/Regex.hs +9/−0
pugs-compat.cabal view
@@ -1,5 +1,5 @@ Name : pugs-compat-Version : 0.0.1+Version : 0.0.2 Build-type : Simple Category : Pugs License : BSD3@@ -14,22 +14,21 @@ TypeSynonymInstances, FlexibleInstances, PatternGuards, UndecidableInstances, FlexibleContexts, OverlappingInstances - Build-depends : base+ Build-depends : base, haskell98, time, directory, process, regex-pcre-builtin, regex-base,+ random, network, containers, bytestring, array, mtl, stm, utf8-string, stringtable-atom Exposed-modules : Pugs.Compat Other-modules : Pugs.Compat.Cast Pugs.Compat.Global Pugs.Compat.ID Pugs.Compat.Monads Pugs.Compat.Posix Pugs.Compat.String+ Pugs.Compat.Regex Ghc-Options : -fparr Hs-source-dirs : src if os(windows)- Build-depends : base, haskell98, time, directory, process,- random, network, containers, bytestring, array, mtl, stm, utf8-string, stringtable-atom Extensions : GeneralizedNewtypeDeriving, ForeignFunctionInterface, DeriveDataTypeable else- Build-depends : base, haskell98, unix, time, directory, process,- random, network, containers, bytestring, array, mtl, stm, utf8-string, stringtable-atom+ Build-depends : unix Extensions : ForeignFunctionInterface CPP-options : -DPUGS_HAVE_POSIX }
src/Pugs/Compat.hs view
@@ -19,6 +19,7 @@ import Pugs.Compat.Monads as X import Pugs.Compat.String as X import Pugs.Compat.Posix as X +import Pugs.Compat.Regex as X import Control.Concurrent as X import Control.Concurrent.STM as X @@ -70,6 +71,9 @@ import System.Mem.Weak as X import System.Process as X import System.Random as X hiding (split)++import Text.Regex.Base as X hiding (empty)+import Text.Regex.PCRE as X hiding (empty) -- Instances. instance Show Unique where
src/Pugs/Compat/ID.hs view
@@ -1,11 +1,13 @@ {-# OPTIONS_GHC -fno-full-laziness -fno-cse -cpp #-} module Pugs.Compat.ID (- ID, bufToID, hashNew,- __, (+++), nullID, + ID, bufToID, hashNew, hashByteString,+ __, (+++), nullID, idKey, idBuf, AtomMap, AtomSet ) where import StringTable.Atom+import StringTable.AtomMap (AtomMap)+import StringTable.AtomSet (AtomSet) import Pugs.Compat.Cast import Data.Int import Data.Bits@@ -18,6 +20,12 @@ bufToID :: ByteString -> ID bufToID = toAtom++idBuf :: ID -> ByteString+idBuf = fromAtom++idKey :: ID -> Int+idKey = fromAtom {-# INLINE hashNew #-} hashNew :: IO (H.HashTable ByteString a)
+ src/Pugs/Compat/Regex.hs view
@@ -0,0 +1,9 @@+module Pugs.Compat.Regex (+ compilePCRE,+ executePCRE+) where++import qualified Text.Regex.PCRE.String as PCRE++compilePCRE = PCRE.compile+executePCRE = PCRE.execute