erigon-pulse/erigon-lib/rlp2
a 2aab8f496c
rlp2 (#8643)
rlp2 is a package that aims to replace the existing erigon-lib/rlp
package and the erigon/common/rlp

it is called rlp2 for now because it requires breaking changes to
erigon-lib/rlp and i do not have the time right now to test all current
uses of such functions

however, the encoder/decoder characteristics of rlp2 might be desirable
for caplin, and also for execution layer parsing blob txns, so im
putting it in a folder called rlp2 (note that it exports package rlp for
easier switching later)

importantly, rlp2 is designed for single-pass decoding with the ability
to skip elements one does not care about. it also is zero alloc.
2023-11-04 09:22:11 +07:00
..
commitment.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00
decoder.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00
encodel.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00
encoder.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00
parse_test.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00
parse.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00
readme.md rlp2 (#8643) 2023-11-04 09:22:11 +07:00
types.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00
unmarshaler_test.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00
unmarshaler.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00
util.go rlp2 (#8643) 2023-11-04 09:22:11 +07:00

rlp

TERMINOLOGY:

RLP string = "Blob" // this is so we don't conflict with existing go name for String
RLP list = "List" // luckily we can keep using list name since go doesn't use it
RLP single byte number = "Decimal" // for numbers from 1-127. a special case