-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Constructing and dissecting IFF files
--
-- The Interchange File Format of Electronic Arts is a container format
-- used for many kinds of data. Common file formats are e.g. IFF-8SVX for
-- 8-bit sampled sounds and IFF-ILBM for images in an interleaved way
-- that is close to image representation in Amiga computers. Cf.
-- http://netghost.narod.ru/gff/vendspec/iff/index.htm This
-- library does only handle the IFF container format and does not handle
-- any specific IFF data type. The intention is the same as of Amiga's
-- iffparse.library. See
-- http://tbs-software.com/guide/index.php?guide=libraries.doc/lib_33.guide&node=33-11.
@package iff
@version 0.0.2
-- | ToDo:
--
-- Lazy read and write.
--
-- Problem on writing: If the length of data is computed lazily, then you
-- must seek back to the file position where the size is stored. That is
-- for writing of lazily generated data we need a seekable file device.
module Data.IFF
data T
Cons :: ChunkId -> Chunk -> T
chunkId :: T -> ChunkId
chunk :: T -> Chunk
data Chunk
Form :: [T] -> Chunk
parts :: Chunk -> [T]
List :: [T] -> [T] -> Chunk
props :: Chunk -> [T]
parts :: Chunk -> [T]
Cat :: [T] -> Chunk
parts :: Chunk -> [T]
Prop :: [T] -> Chunk
parts :: Chunk -> [T]
Chunk :: ByteString -> Chunk
content :: Chunk -> ByteString
data ChunkId
chunkIdFromString :: String -> ChunkId
chunkIdToString :: ChunkId -> String
fromByteString :: ByteString -> Maybe T
toByteString :: T -> ByteString
instance Eq ChunkId
instance Show Chunk
instance Show ChunkId
instance Show T