hinotify-0.4: Haskell binding to inotify

Copyright(c) Lennart Kolmodin 2006-2012
LicenseBSD3
Maintainerkolmodin@gmail.com
Stabilityexperimental
Portabilityhc portable, linux only
Safe HaskellSafe
LanguageHaskell2010

System.INotify

Description

A Haskell binding to INotify. See http://www.kernel.org/pub/linux/kernel/people/rml/inotify/ and man inotify.

Use initINotify to get a INotify, then use addWatch to add a watch on a file or directory. Select which events you're interested in with EventVariety, which corresponds to the Event events.

Use removeWatch once you don't want to watch a file any more.

Documentation

withINotify :: (INotify -> IO a) -> IO a Source #

addWatch :: INotify -> [EventVariety] -> RawFilePath -> (Event -> IO ()) -> IO WatchDescriptor Source #

data INotify Source #

Instances
Eq INotify Source # 
Instance details

Defined in System.INotify

Methods

(==) :: INotify -> INotify -> Bool

(/=) :: INotify -> INotify -> Bool

Show INotify Source # 
Instance details

Defined in System.INotify

Methods

showsPrec :: Int -> INotify -> ShowS

show :: INotify -> String

showList :: [INotify] -> ShowS

data WatchDescriptor Source #

Instances
Eq WatchDescriptor Source # 
Instance details

Defined in System.INotify

Show WatchDescriptor Source # 
Instance details

Defined in System.INotify

Methods

showsPrec :: Int -> WatchDescriptor -> ShowS

show :: WatchDescriptor -> String

showList :: [WatchDescriptor] -> ShowS

data Event Source #

Constructors

Accessed

A file was accessed. Accessed isDirectory file

Fields

Modified

A file was modified. Modified isDirectory file

Fields

Attributes

A files attributes where changed. Attributes isDirectory file

Fields

Closed

A file was closed. Closed isDirectory file wasWriteable

Fields

Opened

A file was opened. Opened isDirectory maybeFilePath

Fields

MovedOut

A file was moved away from the watched dir. MovedFrom isDirectory from cookie

Fields

MovedIn

A file was moved into the watched dir. MovedTo isDirectory to cookie

Fields

MovedSelf

The watched file was moved. MovedSelf isDirectory

Fields

Created

A file was created. Created isDirectory file

Fields

Deleted

A file was deleted. Deleted isDirectory file

Fields

DeletedSelf

The file watched was deleted.

Unmounted

The file watched was unmounted.

QOverflow

The queue overflowed.

Ignored 
Unknown FDEvent 
Instances
Eq Event Source # 
Instance details

Defined in System.INotify

Methods

(==) :: Event -> Event -> Bool

(/=) :: Event -> Event -> Bool

Show Event Source # 
Instance details

Defined in System.INotify

Methods

showsPrec :: Int -> Event -> ShowS

show :: Event -> String

showList :: [Event] -> ShowS

data Cookie Source #

Instances
Eq Cookie Source # 
Instance details

Defined in System.INotify

Methods

(==) :: Cookie -> Cookie -> Bool

(/=) :: Cookie -> Cookie -> Bool

Ord Cookie Source # 
Instance details

Defined in System.INotify

Methods

compare :: Cookie -> Cookie -> Ordering

(<) :: Cookie -> Cookie -> Bool

(<=) :: Cookie -> Cookie -> Bool

(>) :: Cookie -> Cookie -> Bool

(>=) :: Cookie -> Cookie -> Bool

max :: Cookie -> Cookie -> Cookie

min :: Cookie -> Cookie -> Cookie

Show Cookie Source # 
Instance details

Defined in System.INotify

Methods

showsPrec :: Int -> Cookie -> ShowS

show :: Cookie -> String

showList :: [Cookie] -> ShowS