{-# LANGUAGE ScopedTypeVariables #-} module Network.TLS.Util ( sub, takelast, partition3, partition6, (&&!), fmapEither, catchException, forEitherM, mapChunks_, getChunks, Saved, saveMVar, restoreMVar, ) where import qualified Data.ByteString as B import Network.TLS.Imports import Control.Concurrent.MVar import Control.Exception (SomeAsyncException (..)) import qualified Control.Exception as E sub :: ByteString -> Int -> Int -> Maybe ByteString sub :: ByteString -> Int -> Int -> Maybe ByteString sub ByteString b Int offset Int