packages feed

halfs-0.2: Halfs/Directory.hs-boot

module Halfs.Directory where

import Data.Integral
import Data.Map(Map)
import GHC.Base
-- import Halfs
import {-# SOURCE #-} Halfs.FileHandle

data Directory
   = Directory {dirFile     :: FileHandle
               ,dirContents :: DirectoryMap
               ,dirDirty    :: Bool
               }


type DirectoryMap = Map String INInt
data DirectoryCache = DirectoryCache { dirCacheDirty :: Bool
                                     , _dirCache :: Map INInt Directory}

removeChild :: Directory -> String -> Directory
getChildWithName :: Directory -> String -> Maybe INInt
getDirectoryFromCache :: DirectoryCache -> INInt -> Maybe Directory