mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-06-20 13:44:31 +00:00
## Why this should be merged To be able to generate RLP code using type aliases (defined e.g. in `coreth`). This can and should be PR-ed upstream as well I think. ## How this works Call `types.Unalias()` at the start of `buildContext.makeOp()`. The alternative of adding a `case` to the switch statement adds unnecessary recursive calls while `types.Unalias()` is a no-op if not an alias. ## How this was tested New `rlpgen` unit test with aliases of well-known types that have special handling—these make their proper handling easy to spot when inspecting generated code. A recursive alias in the same test also demonstrates full alias resolution. --------- Co-authored-by: Arran Schlosberg <me@arranschlosberg.com> |
||
|---|---|---|
| .. | ||
| internal/rlpstruct | ||
| rlpgen | ||
| decode.go | ||
| decode_tail_test.go | ||
| decode_test.go | ||
| doc.go | ||
| encbuffer.go | ||
| encbuffer_example_test.go | ||
| encode.go | ||
| encode_test.go | ||
| encoder_example_test.go | ||
| fields.libevm.go | ||
| fields.libevm_test.go | ||
| iterator.go | ||
| iterator_test.go | ||
| list.libevm.go | ||
| list.libevm_test.go | ||
| raw.go | ||
| raw_test.go | ||
| safe.go | ||
| typecache.go | ||
| unsafe.go | ||