From fc21cccf1c4970a64f607598989bb015ecaf1dc7 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 11 Jan 2019 19:56:31 -0400 Subject: [PATCH] slight optimisation more --- Key.hs | 4 ++-- Utility/FileSystemEncoding.hs | 8 ++++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Key.hs b/Key.hs index 7fa4176eef..d8c542e5a1 100644 --- a/Key.hs +++ b/Key.hs @@ -93,7 +93,7 @@ buildKeyFile k = byteString (formatKeyVariety (keyVariety k)) _ ?: Nothing = mempty key2file :: Key -> FilePath -key2file = decodeBL . key2file' +key2file = decodeBL' . key2file' key2file' :: Key -> L.ByteString key2file' = toLazyByteStringWith (safeStrategy 128 smallChunkSize) L.empty . buildKeyFile @@ -136,7 +136,7 @@ keyFileParser = do parsechunknum = parseopt $ A8.char 'C' *> A8.decimal file2key :: FilePath -> Maybe Key -file2key = file2key' . encodeBS +file2key = file2key' . encodeBS' file2key' :: S.ByteString -> Maybe Key file2key' b = eitherToMaybe $ A.parseOnly keyFileParser b diff --git a/Utility/FileSystemEncoding.hs b/Utility/FileSystemEncoding.hs index b9e043dcd1..bb3738ed96 100644 --- a/Utility/FileSystemEncoding.hs +++ b/Utility/FileSystemEncoding.hs @@ -19,6 +19,8 @@ module Utility.FileSystemEncoding ( encodeBL, decodeBS, encodeBS, + decodeBL', + encodeBL', decodeBS', encodeBS', decodeW8, @@ -151,6 +153,12 @@ decodeBS' = encodeW8 . S.unpack encodeBS' :: FilePath -> S.ByteString encodeBS' = S.pack . decodeW8 +decodeBL' :: L.ByteString -> FilePath +decodeBL' = encodeW8 . L.unpack + +encodeBL' :: FilePath -> L.ByteString +encodeBL' = L.pack . decodeW8 + {- Recent versions of the unix package have this alias; defined here - for backwards compatibility. -} type RawFilePath = S.ByteString