substrate_stellar_sdk/xdr/impls/
signer.rs1use crate::{IntoHash, IntoPublicKey, Signer, SignerKey, StellarSdkError};
2
3impl Signer {
4 pub fn from_ed25519_public_key<T: IntoPublicKey>(public_key: T, weight: u8) -> Result<Self, StellarSdkError> {
5 Ok(Signer { key: SignerKey::from_ed25519_public_key(public_key)?, weight: weight as u32 })
6 }
7
8 pub fn from_pre_auth_tx<T: IntoHash>(hash: T, weight: u8) -> Result<Self, StellarSdkError> {
9 Ok(Signer { key: SignerKey::from_pre_auth_tx(hash)?, weight: weight as u32 })
10 }
11
12 pub fn from_hash_x<T: IntoHash>(hash: T, weight: u8) -> Result<Self, StellarSdkError> {
13 Ok(Signer { key: SignerKey::from_hash_x(hash)?, weight: weight as u32 })
14 }
15}