Precompute the byte size of the static ABI typed value
@return the byte size of the ABI value
@throws IllegalArgumentException if the ABI type is dynamic typed
Decode ABI encoded byte array to dart values from ABI type schemes
@param encoded byte array of ABI encoding
@throws IllegalArgumentException if encoded byte array cannot match with
ABI encoding rules
Encode values with ABI rules based on the ABI type schemes
@return byte[] of ABI encoding
@throws IllegalArgumentException if encoder cannot infer the type from obj
Cast a dynamic/static array to ABI tuple type
@param size length of the ABI array
@param t ABI type of the element of the ABI array
@return a type-cast from ABI array to an ABI tuple type
Take the bytes after the first 2 bytes in the byte array
(consider the byte array to be an encoding for ABI dynamic typed value)
@param encoded an ABI encoding byte array
@return the tailing bytes after the first 2 bytes of the ABI encoding byte array
@throws IllegalArgumentException if the encoded byte array has length < 2
Take the first 2 bytes in the byte array
(consider the byte array to be an encoding for ABI dynamic typed value)
@param encoded an ABI encoding byte array
@return the first 2 bytes of the ABI encoding byte array
@throws IllegalArgumentException if the encoded byte array has length < 2
Deserialize ABI type scheme from string
@param str string representation of ABI type schemes
@return ABI type scheme object
@throws ArgumentError if ABI type serialization strings are corrupted