Set the Hook State for a given key and value
Read a 32 byte Hook State key from the kread_ptr
Read an arbitrary amount of data from read_ptr
(the value)
Update the Hook State key with the value
C
C
📘HintTo delete the state use
state_set(0, 0, SBUF(key);
.
read_ptr
uint32_t
Pointer to the data (value) to write into Hook State.
If this is 0
(null) then delete the data at this key. May be null.
read_len
uint32_t
The length of the data.
If this is 0
(null) then delete the data at this key. May be null.
kread_ptr
uint32_t
A pointer to the Hook State key at which to store the value.
kread_len
uint32_t
The length of the key. (Should always be 32.)
🚧 CautionXrpl sets internally a maximum hook data size. At time of writing and for public testnet this is hard coded at 128 bytes, however in future it will be a validator-votable number.
int64_t
The number of bytes written to Hook State (the length of the data.)
If negative, an error:
OUT_OF_BOUNDS
- pointers/lengths specified outside of hook memory.
TOO_BIG
- kread_len
was greater than 32, or
- read_len
was greater than the maximum hook data size.
TOO_SMALL
- kread_len
was 0.