splitting ERC-4337 values (packed gas data, meta-nonce)
provide all the necessary tools in a single library (if possible)
Possible features:
[ ] packing/splitting an uint256/bytes32 into chunks of various sizes (128-128, 64-192, 192-64, 208-48, 32-224, 224-32, ...) ?
[ ] packing/splitting other types (smaller) into chunks of various sizes ?
[ ] packing/splitting an array of chunks of similar sizes into a bigger object (put Uint64x4 in a uint256)
[ ] (low level) extract arbitrary bytesXx/uintXx from a bigger object, given an offset
Question:
what are the type we pack/extract ? bytesXx (aligned left) or uintXxx (aligned right) ?
what do we want to pack them into ? bytesXx (aligned left) or uintXxx (aligned right) ?
do we want to split/pack more then two value at once, or do we consider composition for more complex types:
For example: spliting a uint256 into two uint128, and then spliting one of the uint128 into two uint64 allows us to access any uint64 in the initial uint256
Relevant proposals:
5051
5056
Goal:
Possible features:
uint256
/bytes32
into chunks of various sizes (128-128, 64-192, 192-64, 208-48, 32-224, 224-32, ...) ?Question: