CalldataReaderLib

Authors: Aera https://github.com/aera-finance, philogy https://github.com/philogy

Modified version of the original CalldataReaderLib

No functions were changed, only added new functions

Functions

from

function from(bytes calldata data) internal pure returns (CalldataReader reader);

requireAtEndOf

function requireAtEndOf(CalldataReader self, bytes calldata data) internal pure;

requireAtEndOf

function requireAtEndOf(CalldataReader self, CalldataReader end) internal pure;

offset

function offset(CalldataReader self) internal pure returns (uint256);

readBool

function readBool(CalldataReader self) internal pure returns (CalldataReader, bool value);

readU8

function readU8(CalldataReader self) internal pure returns (CalldataReader, uint8 value);

readU16

function readU16(CalldataReader self) internal pure returns (CalldataReader, uint16 value);

readU32

function readU32(CalldataReader self) internal pure returns (CalldataReader, uint32 value);

readI24

function readI24(CalldataReader self) internal pure returns (CalldataReader, int24 value);

readU40

function readU40(CalldataReader self) internal pure returns (CalldataReader, uint40 value);

readU64

function readU64(CalldataReader self) internal pure returns (CalldataReader, uint64 value);

readU128

function readU128(CalldataReader self) internal pure returns (CalldataReader, uint128 value);

readAddr

function readAddr(CalldataReader self) internal pure returns (CalldataReader, address addr);

readU256

function readU256(CalldataReader self) internal pure returns (CalldataReader, uint256 value);

readU24End

function readU24End(CalldataReader self) internal pure returns (CalldataReader, CalldataReader end);

readBytes

function readBytes(CalldataReader self) internal pure returns (CalldataReader, bytes calldata slice);

readU208

ADDED BY AERA

function readU208(CalldataReader self) internal pure returns (CalldataReader, uint208 value);

readOptionalU256

function readOptionalU256(CalldataReader reader) internal pure returns (CalldataReader, uint256 u256);

readBytes32Array

function readBytes32Array(CalldataReader self) internal pure returns (CalldataReader, bytes32[] memory array);

readBytesEnd

function readBytesEnd(CalldataReader self) internal pure returns (CalldataReader end);

readBytesEnd

function readBytesEnd(CalldataReader self, bytes calldata data) internal pure returns (CalldataReader end);

readBytesToMemory

function readBytesToMemory(CalldataReader self) internal pure returns (CalldataReader, bytes memory data);

readBytesToMemory

function readBytesToMemory(CalldataReader self, uint256 length)
    internal
    pure
    returns (CalldataReader, bytes memory data);

Errors

ReaderNotAtEnd

error ReaderNotAtEnd();

Last updated