defuse_core/payload/
erc191.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use defuse_erc191::SignedErc191Payload;
use near_sdk::{serde::de::DeserializeOwned, serde_json};

use super::{DefusePayload, ExtractDefusePayload};

impl<T> ExtractDefusePayload<T> for SignedErc191Payload
where
    T: DeserializeOwned,
{
    type Error = serde_json::Error;

    #[inline]
    fn extract_defuse_payload(self) -> Result<DefusePayload<T>, Self::Error> {
        serde_json::from_str(&self.payload.0)
    }
}