eigen_utils::strategybase::StrategyBase

Struct StrategyBaseInstance

Source
pub struct StrategyBaseInstance<T, P, N = Ethereum> { /* private fields */ }
Expand description

A StrategyBase instance.

Contains type-safe methods for interacting with an on-chain instance of the
[`StrategyBase`](self) contract located at a given `address`, using a given
provider `P`.

If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!)
documentation on how to provide it), the `deploy` and `deploy_builder` methods can
be used to deploy a new instance of the contract.

See the [module-level documentation](self) for all the available methods.

Implementations§

Source§

impl<T: Transport + Clone, P: Provider<T, N>, N: Network> StrategyBaseInstance<T, P, N>

Instantiation and getters/setters.

Source

pub const fn new(address: Address, provider: P) -> Self

Creates a new wrapper around an on-chain StrategyBase contract instance.

    See the [wrapper's documentation](`StrategyBaseInstance`) for more details.
Source

pub async fn deploy( provider: P, _strategyManager: Address, ) -> Result<StrategyBaseInstance<T, P, N>>

Deploys this contract using the given provider and constructor arguments, if any.

    Returns a new instance of the contract, if the deployment was successful.

    For more fine-grained control over the deployment process, use [`deploy_builder`] instead.
Source

pub fn deploy_builder( provider: P, _strategyManager: Address, ) -> RawCallBuilder<T, P, N>

Creates a RawCallBuilder for deploying this contract using the given provider and constructor arguments, if any.

    This is a simple wrapper around creating a `RawCallBuilder` with the data set to
    the bytecode concatenated with the constructor's ABI-encoded arguments.
Source

pub const fn address(&self) -> &Address

Returns a reference to the address.

Source

pub fn set_address(&mut self, address: Address)

Sets the address.

Source

pub fn at(self, address: Address) -> Self

Sets the address and returns self.

Source

pub const fn provider(&self) -> &P

Returns a reference to the provider.

Source§

impl<T, P: Clone, N> StrategyBaseInstance<T, &P, N>

Source

pub fn with_cloned_provider(self) -> StrategyBaseInstance<T, P, N>

Clones the provider and returns a new instance with the cloned provider.

Source§

impl<T: Transport + Clone, P: Provider<T, N>, N: Network> StrategyBaseInstance<T, P, N>

Function calls.

Source

pub fn call_builder<C: SolCall>(&self, call: &C) -> SolCallBuilder<T, &P, C, N>

Creates a new call builder using this contract instance’s provider and address.

Note that the call can be any function call, not just those defined in this contract. Prefer using the other methods for building type-safe contract calls.

Source

pub fn deposit( &self, token: Address, amount: U256, ) -> SolCallBuilder<T, &P, depositCall, N>

Creates a new call builder for the [deposit] function.

Source

pub fn explanation(&self) -> SolCallBuilder<T, &P, explanationCall, N>

Creates a new call builder for the [explanation] function.

Source

pub fn initialize( &self, _underlyingToken: Address, _pauserRegistry: Address, ) -> SolCallBuilder<T, &P, initializeCall, N>

Creates a new call builder for the [initialize] function.

Source

pub fn pause( &self, newPausedStatus: U256, ) -> SolCallBuilder<T, &P, pauseCall, N>

Creates a new call builder for the [pause] function.

Source

pub fn pauseAll(&self) -> SolCallBuilder<T, &P, pauseAllCall, N>

Creates a new call builder for the [pauseAll] function.

Source

pub fn paused_0(&self, index: u8) -> SolCallBuilder<T, &P, paused_0Call, N>

Creates a new call builder for the [paused_0] function.

Source

pub fn paused_1(&self) -> SolCallBuilder<T, &P, paused_1Call, N>

Creates a new call builder for the [paused_1] function.

Source

pub fn pauserRegistry(&self) -> SolCallBuilder<T, &P, pauserRegistryCall, N>

Creates a new call builder for the [pauserRegistry] function.

Source

pub fn setPauserRegistry( &self, newPauserRegistry: Address, ) -> SolCallBuilder<T, &P, setPauserRegistryCall, N>

Creates a new call builder for the [setPauserRegistry] function.

Source

pub fn shares(&self, user: Address) -> SolCallBuilder<T, &P, sharesCall, N>

Creates a new call builder for the [shares] function.

Source

pub fn sharesToUnderlying( &self, amountShares: U256, ) -> SolCallBuilder<T, &P, sharesToUnderlyingCall, N>

Creates a new call builder for the [sharesToUnderlying] function.

Source

pub fn sharesToUnderlyingView( &self, amountShares: U256, ) -> SolCallBuilder<T, &P, sharesToUnderlyingViewCall, N>

Creates a new call builder for the [sharesToUnderlyingView] function.

Source

pub fn strategyManager(&self) -> SolCallBuilder<T, &P, strategyManagerCall, N>

Creates a new call builder for the [strategyManager] function.

Source

pub fn totalShares(&self) -> SolCallBuilder<T, &P, totalSharesCall, N>

Creates a new call builder for the [totalShares] function.

Source

pub fn underlyingToShares( &self, amountUnderlying: U256, ) -> SolCallBuilder<T, &P, underlyingToSharesCall, N>

Creates a new call builder for the [underlyingToShares] function.

Source

pub fn underlyingToSharesView( &self, amountUnderlying: U256, ) -> SolCallBuilder<T, &P, underlyingToSharesViewCall, N>

Creates a new call builder for the [underlyingToSharesView] function.

Source

pub fn underlyingToken(&self) -> SolCallBuilder<T, &P, underlyingTokenCall, N>

Creates a new call builder for the [underlyingToken] function.

Source

pub fn unpause( &self, newPausedStatus: U256, ) -> SolCallBuilder<T, &P, unpauseCall, N>

Creates a new call builder for the [unpause] function.

Source

pub fn userUnderlying( &self, user: Address, ) -> SolCallBuilder<T, &P, userUnderlyingCall, N>

Creates a new call builder for the [userUnderlying] function.

Source

pub fn userUnderlyingView( &self, user: Address, ) -> SolCallBuilder<T, &P, userUnderlyingViewCall, N>

Creates a new call builder for the [userUnderlyingView] function.

Source

pub fn withdraw( &self, recipient: Address, token: Address, amountShares: U256, ) -> SolCallBuilder<T, &P, withdrawCall, N>

Creates a new call builder for the [withdraw] function.

Source§

impl<T: Transport + Clone, P: Provider<T, N>, N: Network> StrategyBaseInstance<T, P, N>

Event filters.

Source

pub fn event_filter<E: SolEvent>(&self) -> Event<T, &P, E, N>

Creates a new event filter using this contract instance’s provider and address.

Note that the type can be any event, not just those defined in this contract. Prefer using the other methods for building type-safe event filters.

Source

pub fn Initialized_filter(&self) -> Event<T, &P, Initialized, N>

Creates a new event filter for the Initialized event.

Source

pub fn Paused_filter(&self) -> Event<T, &P, Paused, N>

Creates a new event filter for the Paused event.

Source

pub fn PauserRegistrySet_filter(&self) -> Event<T, &P, PauserRegistrySet, N>

Creates a new event filter for the PauserRegistrySet event.

Source

pub fn Unpaused_filter(&self) -> Event<T, &P, Unpaused, N>

Creates a new event filter for the Unpaused event.

Trait Implementations§

Source§

impl<T: Clone, P: Clone, N: Clone> Clone for StrategyBaseInstance<T, P, N>

Source§

fn clone(&self) -> StrategyBaseInstance<T, P, N>

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<T, P, N> Debug for StrategyBaseInstance<T, P, N>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T, P, N> Freeze for StrategyBaseInstance<T, P, N>
where P: Freeze,

§

impl<T, P, N> RefUnwindSafe for StrategyBaseInstance<T, P, N>

§

impl<T, P, N> Send for StrategyBaseInstance<T, P, N>
where P: Send, N: Send, T: Send,

§

impl<T, P, N> Sync for StrategyBaseInstance<T, P, N>
where P: Sync, N: Sync, T: Sync,

§

impl<T, P, N> Unpin for StrategyBaseInstance<T, P, N>
where P: Unpin, N: Unpin, T: Unpin,

§

impl<T, P, N> UnwindSafe for StrategyBaseInstance<T, P, N>
where P: UnwindSafe, N: UnwindSafe, T: UnwindSafe,

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit #126799)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

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

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

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 T
where 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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

Source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> TryClone for T
where T: Clone,

Source§

fn try_clone(&self) -> Result<T, Error>

Clones self, possibly returning an error.
Source§

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

Source§

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 T
where U: TryFrom<T>,

Source§

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.
Source§

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

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

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
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T