0308dfac4f
* Fix include why: Eth67 not default yet so that got missed * Rename `LeafKey` => `LeafTie` why: Name is a pen picture of what this object is for. Also, it avoids the ubiquitous term `key`. * Provided `getOrVoid()` wrapper for `getOrDefault()` also: Provide `isValid()` syntactic sugar for `.isNil.not`, `!= 0` etc. Reorg descriptor source, split into sub-sources * Bundled `NodeKey` objects with root ID and called it `HashLabel` why: `NodeKey` (aka repurposed Hash265) objects are unique only within a particular sub-trie (e.g. storage slots) which are kept separated (i.e non-interleaved) by design. This is not applied to the backend as the map VertexID->NodeKey labelling the nodes needs not be injective. For the in-memory database (transaction) layers, the injective map VertexID->(VertexID,NodeKey) is used where the first field of the image tuple is the root ID of the sub-trie the `NodeKey` object is valid. So identical storage tries for different accounts can be represented. |
||
---|---|---|
.. | ||
eth | ||
les | ||
snap | ||
eth66.nim | ||
eth67.nim | ||
les_protocol.nim | ||
snap1.nim | ||
trace_config.nim | ||
wire_protocol.md |