-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | A parser/serializer for Minecraft's Named Binary Tag (NBT) data format.
--
-- This package includes a data type for the NBT file format, notably
-- used to represent saved data in Minecraft.
@package nbt
@version 0.2
-- | Defines a Haskell representation of Minecraft's NBT binary data
-- format, along with instances of Data.Serialize.Serialize. See
-- the NBT specification for details:
-- https://raw.github.com/acfoltzer/nbt/master/NBT-spec.txt.
module Data.NBT
-- | Tag types listed in order so that deriving Enum will assign
-- them the correct number for the binary type field.
data TagType
EndType :: TagType
ByteType :: TagType
ShortType :: TagType
IntType :: TagType
LongType :: TagType
FloatType :: TagType
DoubleType :: TagType
ByteArrayType :: TagType
StringType :: TagType
ListType :: TagType
CompoundType :: TagType
-- | Primitive representation of NBT data. This type contains both named
-- and unnamed variants; a Nothing name signifies an unnamed tag,
-- so when serialized, neither the name nor the type tag will be put.
data NBT
EndTag :: NBT
ByteTag :: (Maybe String) -> Int8 -> NBT
ShortTag :: (Maybe String) -> Int16 -> NBT
IntTag :: (Maybe String) -> Int32 -> NBT
LongTag :: (Maybe String) -> Int64 -> NBT
FloatTag :: (Maybe String) -> Float -> NBT
DoubleTag :: (Maybe String) -> Double -> NBT
ByteArrayTag :: (Maybe String) -> Int32 -> ByteString -> NBT
StringTag :: (Maybe String) -> Int16 -> String -> NBT
ListTag :: (Maybe String) -> TagType -> Int32 -> [NBT] -> NBT
CompoundTag :: (Maybe String) -> [NBT] -> NBT
instance Show TagType
instance Eq TagType
instance Enum TagType
instance Show NBT
instance Eq NBT
instance Binary NBT
instance Binary TagType