pub struct CardanoWallet {
    catalyst: Wallet,
    stake_key: PrivateKey,
    payment_key: PrivateKey,
    network: NetworkInfo,
    stake: u64,
}
Expand description

Represents Cardano mainnet wallet which is able to generate registration transaction metadata

Fields§

§catalyst: Wallet§stake_key: PrivateKey§payment_key: PrivateKey§network: NetworkInfo§stake: u64

Implementations§

source§

impl CardanoWallet

source

pub fn new(stake: u64) -> Self

Creates new wallet with given ada. Currently wallet is purely used for testing purposes, therefore we treat stake as arbitrary number not connected to any blockchain state.

Panics

Panics on key generation error

source

pub fn new_with_rng<T: RngCore + CryptoRng>(stake: u64, rng: T) -> Self

Creates new wallet with given ada and rng. Currently wallet is purely used for testing purposes, therefore we treat stake as arbitrary number not connected to any blockchain state.

Panics

Panics on key generation error

source

pub fn reward_address(&self) -> RewardAddress

Rewards address based on stake public key

source

pub fn stake_credential(&self) -> StakeCredential

Stake address based on stake public key

source

pub fn payment_credential(&self) -> StakeCredential

Payment address based on stake public key

source

pub fn stake_public_key(&self) -> PublicKey

Cardano stake public key

source

pub fn catalyst_secret_key(&self) -> SecretKey<Ed25519Extended>

Catalyst secret key

source

pub fn catalyst_public_key(&self) -> Identifier

Catalyst public key

source

pub fn address(&self) -> BaseAddress

Mainnet address

source

pub fn catalyst_address(&self) -> Address

Catalyst address

source

pub fn generate_voting_registration( &self, delegations: Delegations, slot_no: u64 ) -> Transaction

Creates voting registration metadata according to Cip-36 on given absolut slot number and based on Delegations object which can be either legacy or delegation.

source

pub fn generate_delegated_voting_registration( &self, delegations: Vec<(Identifier, u32)>, slot_no: u64 ) -> Transaction

Creates delegated voting registration metadata according to Cip-36 on given absolut slot number.

source

pub fn generate_direct_voting_registration(&self, slot_no: u64) -> Transaction

Creates direct (a.k.a self) voting registration metadata according to Cip-36 on given absolut slot number.

source

pub fn stake(&self) -> u64

current amount of ada

source

pub fn payment_key(&self) -> &PrivateKey

private payment key

source

pub fn stake_key(&self) -> &PrivateKey

private stake key

Trait Implementations§

source§

impl MainnetWalletStateBuilder for CardanoWallet

source§

fn as_representative(&self) -> MainnetWalletState

wallet registered as representative. This is simplification and wallet catalyst key is added to in memory list instead of going through public representative registration process
source§

fn as_direct_voter(&self) -> MainnetWalletState

wallet registers as direct voter, meaning it will send self-delegation registration
source§

fn as_direct_voter_on_slot_no(&self, slot_no: u64) -> MainnetWalletState

wallet registers as direct voter, meaning it will send self-delegation registration with given nonce = slot_no
source§

fn as_delegator( &self, delegations: Vec<(&CardanoWallet, u8)> ) -> MainnetWalletState

wallet registers as delegator, meaning it will send delegation registration
source§

fn as_delegator_on_slot_no( &self, delegations: Vec<(&CardanoWallet, u8)>, slot_no: u64 ) -> MainnetWalletState

wallet registers as delegator, meaning it will send delegation registration with given nonce = slot_no

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more