The struct no_null_size_contract and strict_size_contract are designed to manage the size expected and the reaction from a violation of this contract.