ouroboros-consensus-0.1.0.0: Consensus layer for the Ouroboros blockchain protocol
Safe HaskellNone
LanguageHaskell2010

Ouroboros.Consensus.Storage.IO

Synopsis

Documentation

open :: FilePath -> OpenMode -> IO Fd Source #

Opens a file from disk.

truncate :: FHandle -> Word64 -> IO () Source #

Truncates the file managed by the input FHandle to the input size.

seek :: FHandle -> SeekMode -> Int64 -> IO () Source #

Seek within the file.

The offset may be negative.

We don't return the new offset since the behaviour of lseek is rather odd (e.g., the file pointer may not actually be moved until a subsequent write)

read :: FHandle -> Word64 -> IO ByteString Source #

Reads a given number of bytes from the input FHandle.

write :: FHandle -> Ptr Word8 -> Int64 -> IO Word32 Source #

Writes the data pointed by the input 'Ptr Word8' into the input FHandle.

close :: FHandle -> IO () Source #

Close handle

This is a no-op when the handle is already closed.

getSize :: FHandle -> IO Word64 Source #

File size of the given file pointer

NOTE: This is not thread safe (changes made to the file in other threads may affect this thread).