Functor Irmin_chunk.AO

module AO (S : Irmin.AO_MAKER_RAW) : Irmin.AO_MAKER_RAW 
AO(X) is an append-only store which store values cut into chunks into the underlying store X.

The keys returns by add are the hash of the chunked values: it could either be a full block if the value is small, or a tree node if the values need to be cut into chunks.

In both case, the return hash will be different from the hash of the value. This discrepency can be fixed using AO_stable, at the cost of adding an indirection on reads.

Parameters:
S : Irmin.AO_MAKER_RAW