directory-layout-0.4.0.0: Declare, construct and verify directory layout

Safe HaskellNone

System.Directory.Layout.Traverse

Description

Layout traverses

Synopsis

Documentation

makeSource

Arguments

:: Layout 
-> FilePath

Root directory

-> IO [LayoutException]

List of warnings

Make layout as specified

For example, suppose you are in an empty directory

 % tree
 .

and you've written simple layout:

 layout = do
   directory "baz" $
     file_ "twey"
   directory "foo" $ do
     directory "bar" $ do
       file_ "quuz"
       file_ "tatata"
     file_ "quux"

then running it should result in this directory tree:

 % tree
 .
 ├── baz
 │   └── twey
 └── foo
     ├── bar
     │   ├── quuz
     │   └── tatata
     └── quux

checkSource

Arguments

:: Layout 
-> FilePath

Root directory

-> IO [LayoutException]

List of failures

Check directory layout agrees with specified one

For example, suppose there is a tree:

 % tree
 .
 ├── baz
 │   └── twey
 └── foo
     ├── bar
     │   ├── quuz
     │   └── tatata
     └── quux

then you can write:

 layout = do
   directory "baz" $
     file_ "twey"
   directory "foo" $ do
     directory "bar" $ do
       file_ "quuz"
       file_ "tatata"
     file_ "quux"

and running check layout "." should result in []