-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | File System watching tool with cli and slave functionalities.
--   
--   File System watching tool with cli and slave lib (with os process)
--   functionalities.
@package fswatch
@version 0.1.0.5

module System.FSWatch.Repr
data WatchProcess
WatchProcess :: String -> ProcessHandle -> Handle -> Handle -> MVar [PE] -> IO () -> WatchProcess
[wPath] :: WatchProcess -> String
[wProcessHandle] :: WatchProcess -> ProcessHandle
[wStdin] :: WatchProcess -> Handle
[wStdout] :: WatchProcess -> Handle
[wNotifyMVar] :: WatchProcess -> MVar [PE]
[wShutdown] :: WatchProcess -> IO ()
type Listener = PE -> IO ()
data Opts
Opts :: Bool -> Int -> Int -> Opts
[oSlave] :: Opts -> Bool
[oFixBufferMode] :: Opts -> Int
[oDelayedBufferMode] :: Opts -> Int
data State
State :: MVar String -> MVar PrintFormat -> MVar NotifyBuffering -> MVar Mode -> State
[prompt] :: State -> MVar String
[printFormat] :: State -> MVar PrintFormat
[buffering] :: State -> MVar NotifyBuffering
[mode] :: State -> MVar Mode
data DBE
DBE :: WatchManager -> String -> DBE
[wman] :: DBE -> WatchManager
[wfn] :: DBE -> String
type DB = [DBE]
type P = (IO (), Chan PE)
data PE
Mod :: String -> PE
Add :: String -> PE
Rem :: String -> PE
Prt :: String -> PE
[fromPrt] :: PE -> String
isPrt :: PE -> Bool
data PrintFormat
MultiRecord :: PrintFormat
SingleRecord :: PrintFormat
data Mode
CLI :: Mode
SLAVE :: Mode
data NotifyBuffering
NoNotifyBuffer :: NotifyBuffering
FixTimeBuffer :: Int -> NotifyBuffering
DelayedBuffer :: Int -> NotifyBuffering
instance GHC.Show.Show System.FSWatch.Repr.NotifyBuffering
instance GHC.Classes.Eq System.FSWatch.Repr.NotifyBuffering
instance GHC.Show.Show System.FSWatch.Repr.Mode
instance GHC.Classes.Eq System.FSWatch.Repr.Mode
instance GHC.Show.Show System.FSWatch.Repr.PrintFormat
instance GHC.Classes.Eq System.FSWatch.Repr.PrintFormat
instance GHC.Read.Read System.FSWatch.Repr.PE
instance GHC.Show.Show System.FSWatch.Repr.PE
instance GHC.Classes.Eq System.FSWatch.Repr.PE

module System.FSWatch
watchMain :: IO ()
getOpts :: IO Opts

module System.FSWatch.Slave
createWatchProcess :: (MonadIO m) => String -> Int -> m WatchProcess
createWatchProcessWithListener :: (MonadIO m) => String -> Int -> Listener -> m WatchProcess
createWatchProcessWL :: (MonadIO m) => String -> Int -> Maybe Listener -> m WatchProcess
watch :: (MonadIO m) => WatchProcess -> FilePath -> m ()
stop :: (MonadIO m) => WatchProcess -> FilePath -> m ()
getNotifies :: WatchProcess -> IO [PE]
waitNotifies :: WatchProcess -> IO [PE]
