Struct cosmwasm_std::Event
source · #[non_exhaustive]pub struct Event {
pub ty: String,
pub attributes: Vec<Attribute>,
}
Expand description
A full Cosmos SDK event.
This version uses string attributes (similar to Cosmos SDK StringEvent),
which then get magically converted to bytes for Tendermint somewhere between
the Rust-Go interface, JSON deserialization and the NewEvent
call in Cosmos SDK.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.ty: String
The event type. This is renamed to “ty” because “type” is reserved in Rust. This sucks, we know.
attributes: Vec<Attribute>
The attributes to be included in the event.
You can learn more about these from Cosmos SDK docs.
Implementations§
source§impl Event
impl Event
sourcepub fn new(ty: impl Into<String>) -> Self
pub fn new(ty: impl Into<String>) -> Self
Create a new event with the given type and an empty list of attributes.
sourcepub fn add_attribute(
self,
key: impl Into<String>,
value: impl Into<String>
) -> Self
pub fn add_attribute( self, key: impl Into<String>, value: impl Into<String> ) -> Self
Add an attribute to the event.
sourcepub fn add_attributes<A: Into<Attribute>>(
self,
attrs: impl IntoIterator<Item = A>
) -> Self
pub fn add_attributes<A: Into<Attribute>>( self, attrs: impl IntoIterator<Item = A> ) -> Self
Bulk add attributes to the event.
Anything that can be turned into an iterator and yields something
that can be converted into an Attribute
is accepted.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Event
impl<'de> Deserialize<'de> for Event
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl JsonSchema for Event
impl JsonSchema for Event
source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
source§fn json_schema(gen: &mut SchemaGenerator) -> Schema
fn json_schema(gen: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref
keyword. Read moresource§impl PartialEq<&Event> for Event
impl PartialEq<&Event> for Event
source§impl PartialEq for Event
impl PartialEq for Event
impl Eq for Event
impl StructuralPartialEq for Event
Auto Trait Implementations§
impl Freeze for Event
impl RefUnwindSafe for Event
impl Send for Event
impl Sync for Event
impl Unpin for Event
impl UnwindSafe for Event
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more