tar-0.6.0.0: Reading, writing and manipulating ".tar" archive files.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Codec.Archive.Tar.Index.IntTrie

Synopsis

Documentation

newtype IntTrie Source #

A compact mapping from sequences of nats to nats.

NOTE: The tries in this module have values only at the leaves (which correspond to files), they do not have values at the branch points (which correspond to directories).

Constructors

IntTrie (UArray Word32 Word32) 

Instances

Instances details
Show IntTrie Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

Eq IntTrie Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

Methods

(==) :: IntTrie -> IntTrie -> Bool #

(/=) :: IntTrie -> IntTrie -> Bool #

construct :: [([Key], Value)] -> IntTrie Source #

Build an IntTrie from a bunch of (key, value) pairs, where the keys are sequences.

toList :: IntTrie -> [([Key], Value)] Source #

Convert the trie to a list

This is the left inverse to construct (modulo ordering).

data TrieNode Source #

Instances

Instances details
Show TrieNode Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

Eq TrieNode Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

newtype Key Source #

The most significant bit is used for tagging, see tagLeaf / tagNode below, so morally it's Word31 only.

Constructors

Key 

Fields

Instances

Instances details
Show Key Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

Methods

showsPrec :: Int -> Key -> ShowS #

show :: Key -> String #

showList :: [Key] -> ShowS #

Eq Key Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

Methods

(==) :: Key -> Key -> Bool #

(/=) :: Key -> Key -> Bool #

Ord Key Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

Methods

compare :: Key -> Key -> Ordering #

(<) :: Key -> Key -> Bool #

(<=) :: Key -> Key -> Bool #

(>) :: Key -> Key -> Bool #

(>=) :: Key -> Key -> Bool #

max :: Key -> Key -> Key #

min :: Key -> Key -> Key #

newtype Value Source #

Constructors

Value 

Fields

Instances

Instances details
Show Value Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

Methods

showsPrec :: Int -> Value -> ShowS #

show :: Value -> String #

showList :: [Value] -> ShowS #

Eq Value Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

Methods

(==) :: Value -> Value -> Bool #

(/=) :: Value -> Value -> Bool #

Ord Value Source # 
Instance details

Defined in Codec.Archive.Tar.Index.IntTrie

Methods

compare :: Value -> Value -> Ordering #

(<) :: Value -> Value -> Bool #

(<=) :: Value -> Value -> Bool #

(>) :: Value -> Value -> Bool #

(>=) :: Value -> Value -> Bool #

max :: Value -> Value -> Value #

min :: Value -> Value -> Value #