Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Codec.Archive.Tar.Index.StringTable
Synopsis
- data StringTable id = StringTable !ByteString !(UArray Int32 Word32) !(UArray Int32 Int32) !(UArray Int32 Int32)
- lookup :: Enum id => StringTable id -> ByteString -> Maybe id
- index :: Enum id => StringTable id -> id -> ByteString
- construct :: Enum id => [ByteString] -> StringTable id
- data StringTableBuilder id
- empty :: StringTableBuilder id
- insert :: Enum id => ByteString -> StringTableBuilder id -> (StringTableBuilder id, id)
- inserts :: Enum id => [ByteString] -> StringTableBuilder id -> (StringTableBuilder id, [id])
- finalise :: Enum id => StringTableBuilder id -> StringTable id
- unfinalise :: Enum id => StringTable id -> StringTableBuilder id
- serialise :: StringTable id -> Builder
- serialiseSize :: StringTable id -> Int
- deserialiseV1 :: ByteString -> Maybe (StringTable id, ByteString)
- deserialiseV2 :: ByteString -> Maybe (StringTable id, ByteString)
- index' :: ByteString -> UArray Int32 Word32 -> Int32 -> ByteString
Documentation
data StringTable id Source #
An efficient mapping from strings to a dense set of integers.
Constructors
StringTable !ByteString !(UArray Int32 Word32) !(UArray Int32 Int32) !(UArray Int32 Int32) |
Instances
Show (StringTable id) Source # | |
Defined in Codec.Archive.Tar.Index.StringTable Methods showsPrec :: Int -> StringTable id -> ShowS # show :: StringTable id -> String # showList :: [StringTable id] -> ShowS # | |
(Eq id, Enum id) => Eq (StringTable id) Source # | |
Defined in Codec.Archive.Tar.Index.StringTable Methods (==) :: StringTable id -> StringTable id -> Bool # (/=) :: StringTable id -> StringTable id -> Bool # |
lookup :: Enum id => StringTable id -> ByteString -> Maybe id Source #
Look up a string in the token table. If the string is present, return its corresponding index.
index :: Enum id => StringTable id -> id -> ByteString Source #
Given the index of a string in the table, return the string.
construct :: Enum id => [ByteString] -> StringTable id Source #
Given a list of strings, construct a StringTable
mapping those strings
to a dense set of integers. Also return the ids for all the strings used
in the construction.
data StringTableBuilder id Source #
Instances
Show id => Show (StringTableBuilder id) Source # | |
Defined in Codec.Archive.Tar.Index.StringTable Methods showsPrec :: Int -> StringTableBuilder id -> ShowS # show :: StringTableBuilder id -> String # showList :: [StringTableBuilder id] -> ShowS # | |
Eq id => Eq (StringTableBuilder id) Source # | |
Defined in Codec.Archive.Tar.Index.StringTable Methods (==) :: StringTableBuilder id -> StringTableBuilder id -> Bool # (/=) :: StringTableBuilder id -> StringTableBuilder id -> Bool # |
empty :: StringTableBuilder id Source #
insert :: Enum id => ByteString -> StringTableBuilder id -> (StringTableBuilder id, id) Source #
inserts :: Enum id => [ByteString] -> StringTableBuilder id -> (StringTableBuilder id, [id]) Source #
finalise :: Enum id => StringTableBuilder id -> StringTable id Source #
unfinalise :: Enum id => StringTable id -> StringTableBuilder id Source #
serialise :: StringTable id -> Builder Source #
serialiseSize :: StringTable id -> Int Source #
deserialiseV1 :: ByteString -> Maybe (StringTable id, ByteString) Source #
deserialiseV2 :: ByteString -> Maybe (StringTable id, ByteString) Source #
index' :: ByteString -> UArray Int32 Word32 -> Int32 -> ByteString Source #