You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The ABI encoding specification is missing the variable-length array type. The implementation also supports the Vector type as shown in the following figure. Though, the Vector type is not documented in the specification. The same is true for tuples.
Figure 13.1: Enumeration of supported Token types. (fuels-rs/packages/fuels-core/src/types.rs#71–94)
71#[derive(Debug,Clone,PartialEq,EnumString)]72#[strum(ascii_case_insensitive)]73pubenumToken{74// Used for unit type variants in Enum. An "empty" enum is not representedasEnum<empty box>,75// because this way we can have both unit and non-unit type variants.76Unit,77U8(u8),78U16(u16),79U32(u32),80U64(u64),81U128(u128),82U256(U256),83Bool(bool),84B256([u8;32]),85Array(Vec<Token>),86Vector(Vec<Token>),87String(StringToken),88Struct(Vec<Token>),89#[strum(disabled)]90Enum(Box<EnumSelector>),91Tuple(Vec<Token>),92RawSlice(Vec<u64>),93Bytes(Vec<u8>),94}
Recommendations
Short term, extend the specification and add a specification for vectors and tuples.
Long term, implement a definition of ready (DoR) for issues, which requires code reviewers to verify that the specification matches the code.
The text was updated successfully, but these errors were encountered:
Just to clarify: the issue is with the fuels-specs repo, not fuels-rs. #1066 didn't fix this issue, simply clarified how coding/decoding happened, but not how those types are coded/decoded, especially not Vectors. Currently working on improving the specs.
Description
The ABI encoding specification is missing the variable-length array type. The implementation also supports the Vector type as shown in the following figure. Though, the Vector type is not documented in the specification. The same is true for tuples.
Figure 13.1: Enumeration of supported Token types. (fuels-rs/packages/fuels-core/src/types.rs#71–94)
Recommendations
Short term, extend the specification and add a specification for vectors and tuples.
Long term, implement a definition of ready (DoR) for issues, which requires code reviewers to verify that the specification matches the code.
The text was updated successfully, but these errors were encountered: