arnaucube
arnaucube/arboPublic Self-hosted repository
Use Prefix consts instead of hardcoded values in newLeafValue & newIntermediate methods
arnaucube root@arnaucube.com
Sun, 29 Aug 2021 23:40:07 +0200
commit

01408fba864e8f8dc0efbbc9aef5a0f8449e33b4

parent

1638860da0df9dafbb0f3e13053c24776f954276

1 files changed, 4 insertions(+), 4 deletions(-)

jump to
M tree.go → tree.go

@@ -478,7 +478,7 @@ if err != nil {

return nil, nil, err } var leafValue []byte - leafValue = append(leafValue, byte(1)) + leafValue = append(leafValue, byte(PrefixValueLeaf)) leafValue = append(leafValue, byte(len(k))) leafValue = append(leafValue, k...) leafValue = append(leafValue, v...)

@@ -509,11 +509,11 @@ // newIntermediate takes the left & right keys of a intermediate node, and

// computes its hash. Returns the hash of the node, which is the node key, and a // byte array that contains the value (which contains the left & right child // keys) to store in the DB. -// [ 1 byte | 1 byte | N bytes | N bytes ] -// [ type of node | length of key | left key | right key ] +// [ 1 byte | 1 byte | N bytes | N bytes ] +// [ type of node | length of left key | left key | right key ] func newIntermediate(hashFunc HashFunction, l, r []byte) ([]byte, []byte, error) { b := make([]byte, PrefixValueLen+hashFunc.Len()*2) - b[0] = 2 + b[0] = PrefixValueIntermediate b[1] = byte(len(l)) copy(b[PrefixValueLen:PrefixValueLen+hashFunc.Len()], l) copy(b[PrefixValueLen+hashFunc.Len():], r)