From 127eaab31294d094a541701180696cc03f89fd5c Mon Sep 17 00:00:00 2001 From: Alex Beregszaszi Date: Fri, 6 Oct 2017 15:00:36 +0100 Subject: [PATCH] Add strict encoding mode to the ABI spec --- docs/abi-spec.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/abi-spec.rst b/docs/abi-spec.rst index 366ca951b..d5aa15e21 100644 --- a/docs/abi-spec.rst +++ b/docs/abi-spec.rst @@ -556,6 +556,17 @@ would result in the JSON: .. _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 ========================