Saltearse al contenido

util_keylet

Slots y Keylets
  • Calcula un keylet del tipo keylet_type según los parámetros a a f
  • Escribe el keylet serializado de 34 bytes en write_ptr
int64_t util_keylet (
uint32_t write_ptr,
uint32_t write_len,
uint32_t keylet_type,
uint32_t a,
uint32_t b,
uint32_t c,
uint32_t d,
uint32_t e,
uint32_t f
);
uint8_t keylet[34];
if (util_keylet(keylet, 34, KEYLET_LINE,
hook_accid, 20,
account_field, 20,
currency_code, 20) != 34)
rollback("Keylet Failed.", 14, 1);
NombreTipoDescripción
write_ptruint32_tPuntero al buffer donde se escribirá el keylet
write_lenuint32_tLongitud del buffer (mínimo 34 bytes)
keylet_typeuint32_tTipo de keylet definido en hookapi.h
auint32_tVer tabla inferior
buint32_tVer tabla inferior
cuint32_tVer tabla inferior
duint32_tVer tabla inferior
euint32_tVer tabla inferior
fuint32_tVer tabla inferior
Tipo de KeyletParámetros
KEYLET_HOOK_STATEa=AccountID, b=20, c=clave estado, d=32, e=namespace, f=32
KEYLET_AMENDMENTS / KEYLET_FEES / KEYLET_NEGATIVE_UNL / KEYLET_EMITTED_DIRTodos 0
KEYLET_SKIPTodos 0 o a=LedgerIndex, b=1
KEYLET_LINEa=Account High, b=20, c=Account Low, d=20, e=Currency, f=20
KEYLET_QUALITYa=keylet, b=34, c/d=uint64, e/f=0
KEYLET_DEPOSIT_PREAUTHa/b=Account1, c/d=Account2
KEYLET_UNCHECKED / CHILD / EMITTED_TXNa=clave, b=32
KEYLET_OWNER_DIR / SIGNERS / ACCOUNT / HOOKa=AccountID, b=20
KEYLET_PAGEa=clave, b=32, c/d=uint64
KEYLET_OFFER / CHECK / ESCROW / NFT_OFFERa=AccountID, b=20 + secuencia o clave
KEYLET_PAYCHANcombinación de cuentas + secuencia o clave
TipoDescripción
int64_tBytes escritos (34). Error si negativo: OUT_OF_BOUNDS, INVALID_ARGUMENT, TOO_SMALL