Is the intention for this file to just pick the encoding format (hex vs. standard 3 charcter encoding), or is it also doing semantic validation? It would be good to list goals/non-goals here.
Originally posted by @johnsaigle in #4705 (comment)
The intention was just to pick the correct IOU encoding format based on data that originally came from on-chain. Ideally this is purely encoding and does not replicate any semantic validation done by XRPL.
Currently, there are defensive checks around XRP and all-zeroes addresses that may be unnecessary and could lead to confusion as to the purpose of this code - primarily to normalize the dual-standard of 20-byte hex or ASCII to and from the XRPL-specific VAA formats.
Originally posted by @johnsaigle in #4705 (comment)
The intention was just to pick the correct IOU encoding format based on data that originally came from on-chain. Ideally this is purely encoding and does not replicate any semantic validation done by XRPL.
Currently, there are defensive checks around
XRPand all-zeroes addresses that may be unnecessary and could lead to confusion as to the purpose of this code - primarily to normalize the dual-standard of 20-byte hex or ASCII to and from the XRPL-specific VAA formats.