Merge pull request #3047 from ethereum/abi-strict

Add strict encoding mode to the ABI spec
This commit is contained in:
chriseth 2018-10-17 19:14:00 +02:00 committed by GitHub
commit 3d1ca07e9b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -590,6 +590,17 @@ would result in the JSON:
.. _abi_packed_mode: .. _abi_packed_mode:
Strict Encoding Mode
====================
Strict encoding mode is the mode that leads to exactly the same encoding as defined in the formal specification above.
This means offsets have to be as small as possible while still not creating overlaps in the data areas and thus no gaps are
allowed.
Usually, ABI decoders are written in a straigthforward way just following offset pointers, but some decoders
might enforce strict mode. The Solidity ABI decoder currently does not enforce strict mode, but the encoder
always creates data in strict mode.
Non-standard Packed Mode Non-standard Packed Mode
======================== ========================