orca_tx_sender/
signer.rs

1use solana_pubkey::Pubkey;
2use solana_signature::Signature;
3use solana_signer::{Signer, SignerError};
4
5pub struct NoopSigner {
6    pubkey: Pubkey,
7}
8
9impl NoopSigner {
10    pub fn new(pubkey: Pubkey) -> Self {
11        Self { pubkey }
12    }
13}
14
15impl Signer for NoopSigner {
16    fn try_pubkey(&self) -> Result<Pubkey, SignerError> {
17        Ok(self.pubkey)
18    }
19
20    fn try_sign_message(&self, _: &[u8]) -> Result<Signature, SignerError> {
21        Err(SignerError::Custom(
22            "NoopSigner cannot sign transactions".to_string(),
23        ))
24    }
25
26    fn is_interactive(&self) -> bool {
27        false
28    }
29}