module Sos.FileEvent ( FileEvent(..) , fileEventPath , showFileEvent ) where import Sos.Utils import Data.ByteString (ByteString) data FileEvent = FileAdded ByteString | FileModified ByteString fileEventPath :: FileEvent -> ByteString fileEventPath :: FileEvent -> ByteString fileEventPath = \case FileAdded ByteString path -> ByteString path FileModified ByteString path -> ByteString path showFileEvent :: FileEvent -> String showFileEvent :: FileEvent -> String showFileEvent = \case FileAdded ByteString path -> ByteString -> String unpackBS (ByteString "Added: " forall a. Semigroup a => a -> a -> a <> ByteString path) FileModified ByteString path -> ByteString -> String unpackBS (ByteString "Modified: " forall a. Semigroup a => a -> a -> a <> ByteString path)