matches :: Files -> Bool
matches Files{..} = let
    compressedInfoPageExt = "\\.info-[0-9]+\\.gz" :: String
    filesPath'            = T.unpack filesPath
 in
    "/usr/share/info/" `isPrefixOf` filesPath' &&
    (".info.gz" `isSuffixOf` filesPath' || filesPath' =~ compressedInfoPageExt)
matches :: Files -> Bool
matches Files{..} = let
    compressedInfoPageExt = "\\.info-[0-9]+\\.gz" :: String
    filesPath'            = T.unpack filesPath
 in
    "/usr/share/info/" `isPrefixOf` filesPath' &&
    (".info.gz" `isSuffixOf` filesPath' || filesPath' =~ compressedInfoPageExt)
matches Files{..} = let
    compressedInfoPageExt = "\\.info-[0-9]+\\.gz" :: String
    filesPath'            = T.unpack filesPath
 in
    "/usr/share/info/" `isPrefixOf` filesPath' &&
    (".info.gz" `isSuffixOf` filesPath' || filesPath' =~ compressedInfoPageExt)