Events
Result<Response, ContractError> es el tipo de retorno t铆pico de las funciones de punto de entrada, con Response sirviendo como envoltorio para Events en el SDK de Cosmos.
El tipo Response deber铆a ser devuelto como el resultado exitoso de un punto de entrada de contrato, como instantiate o execute. Puedes declararlo como mutable y a帽adirlo en el cuerpo de la funci贸n, pero un patr贸n m谩s com煤n es construirlo al final y devolverlo si todos los c谩lculos han tenido 茅xito. En los ejemplos que siguen, Response est谩 envuelto por Ok ya que est谩 siendo devuelto como parte de una funci贸n que devuelve el tipo Result, con Response representando la rama Right o 茅xito.
El punto de entrada Query es una excepci贸n, ya que devolver谩 StdResult debido a la interfaz Cosmos SDK.
Puedes revisar el c贸digo fuente de la estructura Response aqu铆.
El uso m谩s b谩sico de Response es el siguiente:
Este es un escenario t铆pico en las funciones instantiate cuando no se devuelve ning煤n mensaje al cliente.
Sin embargo, en la mayor铆a de los casos de manejo de ejecutar, una respuesta debe ser devuelto:
Este fragmento de c贸digo implica varios pasos adicionales, as铆 que analic茅moslo con m谩s detalle. Puede acceder al c贸digo fuente de este ejemplo haciendo clic aqu铆.
Se crea una nueva Response
Se le a帽aden varios pares clave/valor.
La respuesta se devuelve envuelta en un resultado de tipo Ok
Al invocar su contrato a trav茅s de la interfaz de l铆nea de comandos (CLI), observar谩 que se registran como parte de la respuesta "raw_log", junto con otros eventos del SDK.
En lugar de limitarse a a帽adir atributos, add_event puede emplearse para a帽adir un evento no encapsulado con el que puedan interactuar otros clientes o contratos.
Last updated