libzfs-0.2.0.0: Bindings to libzfs, for dealing with the Z File System and Zpools.

Safe HaskellSafe
LanguageHaskell2010

System.Zfs.Iter

Synopsis

Documentation

getRootCount :: Zfs Int #

Get number of root zfs

getChildrenCount :: Zdataset -> Zfs Int #

Get number of child zfs

getZpoolCount :: Zfs Int #

Get the number of available Zpools. Less expensive than `length $ getZpools'.

getRoots :: Zfs [Zdataset] #

Get all root file systems. Implemented using forRoots.

getChildren :: Zdataset -> Zfs [Zdataset] #

Get all zfs children . Implemented using forChildren.

getZpools :: Zfs [Zpool] #

Get all available Zpools. Implemented using forZpools.

forRoots :: MonadIO m => (Zdataset -> ZfsT IO a) -> ZfsT m [a] #

Iterate over all root zfs

forChildren :: MonadIO m => Zdataset -> (Zdataset -> ZfsT IO a) -> ZfsT m [a] #

Iterate over all children

forFilesystems :: MonadIO m => Zdataset -> (Zdataset -> ZfsT IO a) -> ZfsT m [a] #

Iterate over all child filesystems

forSnapshots :: MonadIO m => Zdataset -> (Zdataset -> ZfsT IO a) -> ZfsT m [a] #

Iterate over all child zfs

forZpools :: MonadIO m => (Zpool -> ZfsT IO a) -> ZfsT m [a] #

Run some function for all available Zpools and return the results as a list

forZpools_ :: MonadIO m => (Zpool -> ZfsT IO ()) -> ZfsT m () #

Run some function for all available Zpools without result. Less expensive than forZpools.

forVdevs :: MonadIO m => Zpool -> (Vdev -> ZfsT m a) -> ZfsT m [a] #

Iterate over all Vdevs in a pool