# Functions
DefaultHashFunc is the default hash function used when no user-specified hash function is provided.
DefaultHashFuncParallel is the default hash function used by parallel algorithms when no user-specified hash function is provided.
New generates a new Merkle Tree with the specified configuration and data blocks.
Verify checks if the data block is valid using the Merkle Tree proof and the provided Merkle root hash.
# Constants
ModeProofGen is the proof generation configuration mode.
ModeProofGenAndTreeBuild is the proof generation and tree building configuration mode.
ModeTreeBuild is the tree building configuration mode.
# Variables
ErrDataBlockIsNil is the error for a nil data block.
ErrInvalidConfigMode is the error for an invalid configuration mode.
ErrInvalidNumOfDataBlocks is the error for an invalid number of data blocks.
ErrProofInvalidDataBlock is the error for an invalid data block in Proof() function.
ErrProofInvalidModeTreeNotBuilt is the error for an invalid mode in Proof() function.
ErrProofIsNil is the error for a nil proof.
# Structs
Config is the configuration of Merkle Tree.
MerkleTree implements the Merkle Tree data structure.
Proof represents a Merkle Tree proof.
# Interfaces
DataBlock is the interface for input data blocks used to generate the Merkle Tree.
# Type aliases
TypeConfigMode is the type in the Merkle Tree configuration indicating what operations are performed.
TypeHashFunc is the signature of the hash functions used for Merkle Tree generation.