Enum tg_utils::SlashMsg

source ·
pub enum SlashMsg {
    AddSlasher {
        addr: String,
    },
    RemoveSlasher {
        addr: String,
    },
    Slash {
        addr: String,
        portion: Decimal,
    },
}
Expand description

A common (sort of) interface for adding/removing slashers and slashing. This type exists so that contracts have an easy way of serializing these messages and using something like encode_raw_msg.

Examples

use tg4::Tg4Contract;
use tg_utils::SlashMsg;
use cosmwasm_std::{to_binary, Addr, Response};

let tg_contract = Tg4Contract::new(Addr::unchecked("some_contract"));

let slash_msg = to_binary(&SlashMsg::AddSlasher {
    addr: "some_other_contract".to_string(),
}).unwrap();

let res = Response::new()
    .add_submessage(tg_contract.encode_raw_msg(slash_msg).unwrap());

Variants§

§

AddSlasher

Fields

§addr: String

Adds slasher for contract if there are enough slasher_preauths left

§

RemoveSlasher

Fields

§addr: String

Removes slasher for contract

§

Slash

Fields

§addr: String
§portion: Decimal

Slash engagement points from address

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Deserialize this value from the given Serde deserializer. Read more
The name of the generated JSON Schema. Read more
Generates a JSON Schema for this type. Read more
Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
This method tests for self and other values to be equal, and is used by ==.
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.