hinotify-0.3.5: Haskell binding to inotify
Copyright(c) Lennart Kolmodin 2006-2012
LicenseBSD3
Maintainerkolmodin@gmail.com
Stabilityexperimental
Portabilityhc portable, linux only
Safe HaskellSafe-Inferred
LanguageHaskell98

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

killINotify :: INotify -> IO () #

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

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

data INotify #

Instances

Instances details
Eq INotify # 
Instance details

Defined in System.INotify

Methods

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

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

Show INotify # 
Instance details

Defined in System.INotify

Methods

showsPrec :: Int -> INotify -> ShowS

show :: INotify -> String

showList :: [INotify] -> ShowS

data WatchDescriptor #

Instances

Instances details
Eq WatchDescriptor # 
Instance details

Defined in System.INotify

Show WatchDescriptor # 
Instance details

Defined in System.INotify

Methods

showsPrec :: Int -> WatchDescriptor -> ShowS

show :: WatchDescriptor -> String

showList :: [WatchDescriptor] -> ShowS

data Event #

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

Instances details
Eq Event # 
Instance details

Defined in System.INotify

Methods

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

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

Show Event # 
Instance details

Defined in System.INotify

Methods

showsPrec :: Int -> Event -> ShowS

show :: Event -> String

showList :: [Event] -> ShowS

data EventVariety #

Instances

Instances details
Eq EventVariety # 
Instance details

Defined in System.INotify

Methods

(==) :: EventVariety -> EventVariety -> Bool

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

data Cookie #

Instances

Instances details
Eq Cookie # 
Instance details

Defined in System.INotify

Methods

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

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

Ord Cookie # 
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 # 
Instance details

Defined in System.INotify

Methods

showsPrec :: Int -> Cookie -> ShowS

show :: Cookie -> String

showList :: [Cookie] -> ShowS