1pub use ierc4626::*;
2#[allow(
5 clippy::enum_variant_names,
6 clippy::too_many_arguments,
7 clippy::upper_case_acronyms,
8 clippy::type_complexity,
9 dead_code,
10 non_camel_case_types,
11)]
12pub mod ierc4626 {
13 #[rustfmt::skip]
14 const __ABI: &str = "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Approval\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[],\"indexed\":false},{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Deposit\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Transfer\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[],\"indexed\":false},{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Withdraw\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"asset\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"assetTokenAddress\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"convertToAssets\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"convertToShares\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deposit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"maxDeposit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAssets\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"maxMint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxShares\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"maxRedeem\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxShares\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"maxWithdraw\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAssets\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"mint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"previewDeposit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"previewMint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"previewRedeem\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"previewWithdraw\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"redeem\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"totalAssets\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"totalManagedAssets\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"withdraw\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\",\"components\":[]}]}]";
15 pub static IERC4626_ABI: ::ethers_contract::Lazy<::ethers_core::abi::Abi> = ::ethers_contract::Lazy::new(||
17 ::ethers_core::utils::__serde_json::from_str(__ABI).expect("ABI is always valid"));
18 pub struct IERC4626<M>(::ethers_contract::Contract<M>);
19 impl<M> ::core::clone::Clone for IERC4626<M> {
20 fn clone(&self) -> Self {
21 Self(::core::clone::Clone::clone(&self.0))
22 }
23 }
24 impl<M> ::core::ops::Deref for IERC4626<M> {
25 type Target = ::ethers_contract::Contract<M>;
26 fn deref(&self) -> &Self::Target {
27 &self.0
28 }
29 }
30 impl<M> ::core::ops::DerefMut for IERC4626<M> {
31 fn deref_mut(&mut self) -> &mut Self::Target {
32 &mut self.0
33 }
34 }
35 impl<M> ::core::fmt::Debug for IERC4626<M> {
36 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
37 f.debug_tuple(stringify!(IERC4626)).field(&self.address()).finish()
38 }
39 }
40 impl<M: ::ethers_providers::Middleware> IERC4626<M> {
41 pub fn new<T: Into<::ethers_core::types::Address>>(
44 address: T,
45 client: ::std::sync::Arc<M>,
46 ) -> Self {
47 Self(
48 ::ethers_contract::Contract::new(
49 address.into(),
50 IERC4626_ABI.clone(),
51 client,
52 ),
53 )
54 }
55 pub fn allowance(
57 &self,
58 owner: ::ethers_core::types::Address,
59 spender: ::ethers_core::types::Address,
60 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
61 self.0
62 .method_hash([221, 98, 237, 62], (owner, spender))
63 .expect("method not found (this should never happen)")
64 }
65 pub fn approve(
67 &self,
68 spender: ::ethers_core::types::Address,
69 amount: ::ethers_core::types::U256,
70 ) -> ::ethers_contract::builders::ContractCall<M, bool> {
71 self.0
72 .method_hash([9, 94, 167, 179], (spender, amount))
73 .expect("method not found (this should never happen)")
74 }
75 pub fn asset(
77 &self,
78 ) -> ::ethers_contract::builders::ContractCall<
79 M,
80 ::ethers_core::types::Address,
81 > {
82 self.0
83 .method_hash([56, 213, 46, 15], ())
84 .expect("method not found (this should never happen)")
85 }
86 pub fn balance_of(
88 &self,
89 account: ::ethers_core::types::Address,
90 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
91 self.0
92 .method_hash([112, 160, 130, 49], account)
93 .expect("method not found (this should never happen)")
94 }
95 pub fn convert_to_assets(
97 &self,
98 shares: ::ethers_core::types::U256,
99 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
100 self.0
101 .method_hash([7, 162, 209, 58], shares)
102 .expect("method not found (this should never happen)")
103 }
104 pub fn convert_to_shares(
106 &self,
107 assets: ::ethers_core::types::U256,
108 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
109 self.0
110 .method_hash([198, 230, 245, 146], assets)
111 .expect("method not found (this should never happen)")
112 }
113 pub fn decimals(&self) -> ::ethers_contract::builders::ContractCall<M, u8> {
115 self.0
116 .method_hash([49, 60, 229, 103], ())
117 .expect("method not found (this should never happen)")
118 }
119 pub fn deposit(
121 &self,
122 assets: ::ethers_core::types::U256,
123 receiver: ::ethers_core::types::Address,
124 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
125 self.0
126 .method_hash([110, 85, 63, 101], (assets, receiver))
127 .expect("method not found (this should never happen)")
128 }
129 pub fn max_deposit(
131 &self,
132 receiver: ::ethers_core::types::Address,
133 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
134 self.0
135 .method_hash([64, 45, 38, 125], receiver)
136 .expect("method not found (this should never happen)")
137 }
138 pub fn max_mint(
140 &self,
141 receiver: ::ethers_core::types::Address,
142 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
143 self.0
144 .method_hash([198, 61, 117, 182], receiver)
145 .expect("method not found (this should never happen)")
146 }
147 pub fn max_redeem(
149 &self,
150 owner: ::ethers_core::types::Address,
151 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
152 self.0
153 .method_hash([217, 5, 119, 126], owner)
154 .expect("method not found (this should never happen)")
155 }
156 pub fn max_withdraw(
158 &self,
159 owner: ::ethers_core::types::Address,
160 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
161 self.0
162 .method_hash([206, 150, 203, 119], owner)
163 .expect("method not found (this should never happen)")
164 }
165 pub fn mint(
167 &self,
168 shares: ::ethers_core::types::U256,
169 receiver: ::ethers_core::types::Address,
170 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
171 self.0
172 .method_hash([148, 191, 128, 77], (shares, receiver))
173 .expect("method not found (this should never happen)")
174 }
175 pub fn name(
177 &self,
178 ) -> ::ethers_contract::builders::ContractCall<M, ::std::string::String> {
179 self.0
180 .method_hash([6, 253, 222, 3], ())
181 .expect("method not found (this should never happen)")
182 }
183 pub fn preview_deposit(
185 &self,
186 assets: ::ethers_core::types::U256,
187 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
188 self.0
189 .method_hash([239, 139, 48, 247], assets)
190 .expect("method not found (this should never happen)")
191 }
192 pub fn preview_mint(
194 &self,
195 shares: ::ethers_core::types::U256,
196 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
197 self.0
198 .method_hash([179, 215, 246, 185], shares)
199 .expect("method not found (this should never happen)")
200 }
201 pub fn preview_redeem(
203 &self,
204 shares: ::ethers_core::types::U256,
205 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
206 self.0
207 .method_hash([76, 218, 213, 6], shares)
208 .expect("method not found (this should never happen)")
209 }
210 pub fn preview_withdraw(
212 &self,
213 assets: ::ethers_core::types::U256,
214 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
215 self.0
216 .method_hash([10, 40, 164, 119], assets)
217 .expect("method not found (this should never happen)")
218 }
219 pub fn redeem(
221 &self,
222 shares: ::ethers_core::types::U256,
223 receiver: ::ethers_core::types::Address,
224 owner: ::ethers_core::types::Address,
225 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
226 self.0
227 .method_hash([186, 8, 118, 82], (shares, receiver, owner))
228 .expect("method not found (this should never happen)")
229 }
230 pub fn symbol(
232 &self,
233 ) -> ::ethers_contract::builders::ContractCall<M, ::std::string::String> {
234 self.0
235 .method_hash([149, 216, 155, 65], ())
236 .expect("method not found (this should never happen)")
237 }
238 pub fn total_assets(
240 &self,
241 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
242 self.0
243 .method_hash([1, 225, 209, 20], ())
244 .expect("method not found (this should never happen)")
245 }
246 pub fn total_supply(
248 &self,
249 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
250 self.0
251 .method_hash([24, 22, 13, 221], ())
252 .expect("method not found (this should never happen)")
253 }
254 pub fn transfer(
256 &self,
257 to: ::ethers_core::types::Address,
258 amount: ::ethers_core::types::U256,
259 ) -> ::ethers_contract::builders::ContractCall<M, bool> {
260 self.0
261 .method_hash([169, 5, 156, 187], (to, amount))
262 .expect("method not found (this should never happen)")
263 }
264 pub fn transfer_from(
266 &self,
267 from: ::ethers_core::types::Address,
268 to: ::ethers_core::types::Address,
269 amount: ::ethers_core::types::U256,
270 ) -> ::ethers_contract::builders::ContractCall<M, bool> {
271 self.0
272 .method_hash([35, 184, 114, 221], (from, to, amount))
273 .expect("method not found (this should never happen)")
274 }
275 pub fn withdraw(
277 &self,
278 assets: ::ethers_core::types::U256,
279 receiver: ::ethers_core::types::Address,
280 owner: ::ethers_core::types::Address,
281 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
282 self.0
283 .method_hash([180, 96, 175, 148], (assets, receiver, owner))
284 .expect("method not found (this should never happen)")
285 }
286 pub fn approval_filter(
288 &self,
289 ) -> ::ethers_contract::builders::Event<::std::sync::Arc<M>, M, ApprovalFilter> {
290 self.0.event()
291 }
292 pub fn deposit_filter(
294 &self,
295 ) -> ::ethers_contract::builders::Event<::std::sync::Arc<M>, M, DepositFilter> {
296 self.0.event()
297 }
298 pub fn transfer_filter(
300 &self,
301 ) -> ::ethers_contract::builders::Event<::std::sync::Arc<M>, M, TransferFilter> {
302 self.0.event()
303 }
304 pub fn withdraw_filter(
306 &self,
307 ) -> ::ethers_contract::builders::Event<::std::sync::Arc<M>, M, WithdrawFilter> {
308 self.0.event()
309 }
310 pub fn events(
312 &self,
313 ) -> ::ethers_contract::builders::Event<::std::sync::Arc<M>, M, IERC4626Events> {
314 self.0.event_with_filter(::core::default::Default::default())
315 }
316 }
317 impl<M: ::ethers_providers::Middleware> From<::ethers_contract::Contract<M>>
318 for IERC4626<M> {
319 fn from(contract: ::ethers_contract::Contract<M>) -> Self {
320 Self::new(contract.address(), contract.client())
321 }
322 }
323 #[derive(
324 Clone,
325 ::ethers_contract::EthEvent,
326 ::ethers_contract::EthDisplay,
327 Default,
328 Debug,
329 PartialEq,
330 Eq,
331 Hash
332 )]
333 #[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")]
334 pub struct ApprovalFilter {
335 #[ethevent(indexed)]
336 pub owner: ::ethers_core::types::Address,
337 #[ethevent(indexed)]
338 pub spender: ::ethers_core::types::Address,
339 pub value: ::ethers_core::types::U256,
340 }
341 #[derive(
342 Clone,
343 ::ethers_contract::EthEvent,
344 ::ethers_contract::EthDisplay,
345 Default,
346 Debug,
347 PartialEq,
348 Eq,
349 Hash
350 )]
351 #[ethevent(name = "Deposit", abi = "Deposit(address,address,uint256,uint256)")]
352 pub struct DepositFilter {
353 #[ethevent(indexed)]
354 pub sender: ::ethers_core::types::Address,
355 #[ethevent(indexed)]
356 pub owner: ::ethers_core::types::Address,
357 pub assets: ::ethers_core::types::U256,
358 pub shares: ::ethers_core::types::U256,
359 }
360 #[derive(
361 Clone,
362 ::ethers_contract::EthEvent,
363 ::ethers_contract::EthDisplay,
364 Default,
365 Debug,
366 PartialEq,
367 Eq,
368 Hash
369 )]
370 #[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")]
371 pub struct TransferFilter {
372 #[ethevent(indexed)]
373 pub from: ::ethers_core::types::Address,
374 #[ethevent(indexed)]
375 pub to: ::ethers_core::types::Address,
376 pub value: ::ethers_core::types::U256,
377 }
378 #[derive(
379 Clone,
380 ::ethers_contract::EthEvent,
381 ::ethers_contract::EthDisplay,
382 Default,
383 Debug,
384 PartialEq,
385 Eq,
386 Hash
387 )]
388 #[ethevent(
389 name = "Withdraw",
390 abi = "Withdraw(address,address,address,uint256,uint256)"
391 )]
392 pub struct WithdrawFilter {
393 #[ethevent(indexed)]
394 pub sender: ::ethers_core::types::Address,
395 #[ethevent(indexed)]
396 pub receiver: ::ethers_core::types::Address,
397 #[ethevent(indexed)]
398 pub owner: ::ethers_core::types::Address,
399 pub assets: ::ethers_core::types::U256,
400 pub shares: ::ethers_core::types::U256,
401 }
402 #[derive(Clone, ::ethers_contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
404 pub enum IERC4626Events {
405 ApprovalFilter(ApprovalFilter),
406 DepositFilter(DepositFilter),
407 TransferFilter(TransferFilter),
408 WithdrawFilter(WithdrawFilter),
409 }
410 impl ::ethers_contract::EthLogDecode for IERC4626Events {
411 fn decode_log(
412 log: &::ethers_core::abi::RawLog,
413 ) -> ::core::result::Result<Self, ::ethers_core::abi::Error> {
414 if let Ok(decoded) = ApprovalFilter::decode_log(log) {
415 return Ok(IERC4626Events::ApprovalFilter(decoded));
416 }
417 if let Ok(decoded) = DepositFilter::decode_log(log) {
418 return Ok(IERC4626Events::DepositFilter(decoded));
419 }
420 if let Ok(decoded) = TransferFilter::decode_log(log) {
421 return Ok(IERC4626Events::TransferFilter(decoded));
422 }
423 if let Ok(decoded) = WithdrawFilter::decode_log(log) {
424 return Ok(IERC4626Events::WithdrawFilter(decoded));
425 }
426 Err(::ethers_core::abi::Error::InvalidData)
427 }
428 }
429 impl ::core::fmt::Display for IERC4626Events {
430 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
431 match self {
432 Self::ApprovalFilter(element) => ::core::fmt::Display::fmt(element, f),
433 Self::DepositFilter(element) => ::core::fmt::Display::fmt(element, f),
434 Self::TransferFilter(element) => ::core::fmt::Display::fmt(element, f),
435 Self::WithdrawFilter(element) => ::core::fmt::Display::fmt(element, f),
436 }
437 }
438 }
439 impl ::core::convert::From<ApprovalFilter> for IERC4626Events {
440 fn from(value: ApprovalFilter) -> Self {
441 Self::ApprovalFilter(value)
442 }
443 }
444 impl ::core::convert::From<DepositFilter> for IERC4626Events {
445 fn from(value: DepositFilter) -> Self {
446 Self::DepositFilter(value)
447 }
448 }
449 impl ::core::convert::From<TransferFilter> for IERC4626Events {
450 fn from(value: TransferFilter) -> Self {
451 Self::TransferFilter(value)
452 }
453 }
454 impl ::core::convert::From<WithdrawFilter> for IERC4626Events {
455 fn from(value: WithdrawFilter) -> Self {
456 Self::WithdrawFilter(value)
457 }
458 }
459 #[derive(
461 Clone,
462 ::ethers_contract::EthCall,
463 ::ethers_contract::EthDisplay,
464 Default,
465 Debug,
466 PartialEq,
467 Eq,
468 Hash
469 )]
470 #[ethcall(name = "allowance", abi = "allowance(address,address)")]
471 pub struct AllowanceCall {
472 pub owner: ::ethers_core::types::Address,
473 pub spender: ::ethers_core::types::Address,
474 }
475 #[derive(
477 Clone,
478 ::ethers_contract::EthCall,
479 ::ethers_contract::EthDisplay,
480 Default,
481 Debug,
482 PartialEq,
483 Eq,
484 Hash
485 )]
486 #[ethcall(name = "approve", abi = "approve(address,uint256)")]
487 pub struct ApproveCall {
488 pub spender: ::ethers_core::types::Address,
489 pub amount: ::ethers_core::types::U256,
490 }
491 #[derive(
493 Clone,
494 ::ethers_contract::EthCall,
495 ::ethers_contract::EthDisplay,
496 Default,
497 Debug,
498 PartialEq,
499 Eq,
500 Hash
501 )]
502 #[ethcall(name = "asset", abi = "asset()")]
503 pub struct AssetCall;
504 #[derive(
506 Clone,
507 ::ethers_contract::EthCall,
508 ::ethers_contract::EthDisplay,
509 Default,
510 Debug,
511 PartialEq,
512 Eq,
513 Hash
514 )]
515 #[ethcall(name = "balanceOf", abi = "balanceOf(address)")]
516 pub struct BalanceOfCall {
517 pub account: ::ethers_core::types::Address,
518 }
519 #[derive(
521 Clone,
522 ::ethers_contract::EthCall,
523 ::ethers_contract::EthDisplay,
524 Default,
525 Debug,
526 PartialEq,
527 Eq,
528 Hash
529 )]
530 #[ethcall(name = "convertToAssets", abi = "convertToAssets(uint256)")]
531 pub struct ConvertToAssetsCall {
532 pub shares: ::ethers_core::types::U256,
533 }
534 #[derive(
536 Clone,
537 ::ethers_contract::EthCall,
538 ::ethers_contract::EthDisplay,
539 Default,
540 Debug,
541 PartialEq,
542 Eq,
543 Hash
544 )]
545 #[ethcall(name = "convertToShares", abi = "convertToShares(uint256)")]
546 pub struct ConvertToSharesCall {
547 pub assets: ::ethers_core::types::U256,
548 }
549 #[derive(
551 Clone,
552 ::ethers_contract::EthCall,
553 ::ethers_contract::EthDisplay,
554 Default,
555 Debug,
556 PartialEq,
557 Eq,
558 Hash
559 )]
560 #[ethcall(name = "decimals", abi = "decimals()")]
561 pub struct DecimalsCall;
562 #[derive(
564 Clone,
565 ::ethers_contract::EthCall,
566 ::ethers_contract::EthDisplay,
567 Default,
568 Debug,
569 PartialEq,
570 Eq,
571 Hash
572 )]
573 #[ethcall(name = "deposit", abi = "deposit(uint256,address)")]
574 pub struct DepositCall {
575 pub assets: ::ethers_core::types::U256,
576 pub receiver: ::ethers_core::types::Address,
577 }
578 #[derive(
580 Clone,
581 ::ethers_contract::EthCall,
582 ::ethers_contract::EthDisplay,
583 Default,
584 Debug,
585 PartialEq,
586 Eq,
587 Hash
588 )]
589 #[ethcall(name = "maxDeposit", abi = "maxDeposit(address)")]
590 pub struct MaxDepositCall {
591 pub receiver: ::ethers_core::types::Address,
592 }
593 #[derive(
595 Clone,
596 ::ethers_contract::EthCall,
597 ::ethers_contract::EthDisplay,
598 Default,
599 Debug,
600 PartialEq,
601 Eq,
602 Hash
603 )]
604 #[ethcall(name = "maxMint", abi = "maxMint(address)")]
605 pub struct MaxMintCall {
606 pub receiver: ::ethers_core::types::Address,
607 }
608 #[derive(
610 Clone,
611 ::ethers_contract::EthCall,
612 ::ethers_contract::EthDisplay,
613 Default,
614 Debug,
615 PartialEq,
616 Eq,
617 Hash
618 )]
619 #[ethcall(name = "maxRedeem", abi = "maxRedeem(address)")]
620 pub struct MaxRedeemCall {
621 pub owner: ::ethers_core::types::Address,
622 }
623 #[derive(
625 Clone,
626 ::ethers_contract::EthCall,
627 ::ethers_contract::EthDisplay,
628 Default,
629 Debug,
630 PartialEq,
631 Eq,
632 Hash
633 )]
634 #[ethcall(name = "maxWithdraw", abi = "maxWithdraw(address)")]
635 pub struct MaxWithdrawCall {
636 pub owner: ::ethers_core::types::Address,
637 }
638 #[derive(
640 Clone,
641 ::ethers_contract::EthCall,
642 ::ethers_contract::EthDisplay,
643 Default,
644 Debug,
645 PartialEq,
646 Eq,
647 Hash
648 )]
649 #[ethcall(name = "mint", abi = "mint(uint256,address)")]
650 pub struct MintCall {
651 pub shares: ::ethers_core::types::U256,
652 pub receiver: ::ethers_core::types::Address,
653 }
654 #[derive(
656 Clone,
657 ::ethers_contract::EthCall,
658 ::ethers_contract::EthDisplay,
659 Default,
660 Debug,
661 PartialEq,
662 Eq,
663 Hash
664 )]
665 #[ethcall(name = "name", abi = "name()")]
666 pub struct NameCall;
667 #[derive(
669 Clone,
670 ::ethers_contract::EthCall,
671 ::ethers_contract::EthDisplay,
672 Default,
673 Debug,
674 PartialEq,
675 Eq,
676 Hash
677 )]
678 #[ethcall(name = "previewDeposit", abi = "previewDeposit(uint256)")]
679 pub struct PreviewDepositCall {
680 pub assets: ::ethers_core::types::U256,
681 }
682 #[derive(
684 Clone,
685 ::ethers_contract::EthCall,
686 ::ethers_contract::EthDisplay,
687 Default,
688 Debug,
689 PartialEq,
690 Eq,
691 Hash
692 )]
693 #[ethcall(name = "previewMint", abi = "previewMint(uint256)")]
694 pub struct PreviewMintCall {
695 pub shares: ::ethers_core::types::U256,
696 }
697 #[derive(
699 Clone,
700 ::ethers_contract::EthCall,
701 ::ethers_contract::EthDisplay,
702 Default,
703 Debug,
704 PartialEq,
705 Eq,
706 Hash
707 )]
708 #[ethcall(name = "previewRedeem", abi = "previewRedeem(uint256)")]
709 pub struct PreviewRedeemCall {
710 pub shares: ::ethers_core::types::U256,
711 }
712 #[derive(
714 Clone,
715 ::ethers_contract::EthCall,
716 ::ethers_contract::EthDisplay,
717 Default,
718 Debug,
719 PartialEq,
720 Eq,
721 Hash
722 )]
723 #[ethcall(name = "previewWithdraw", abi = "previewWithdraw(uint256)")]
724 pub struct PreviewWithdrawCall {
725 pub assets: ::ethers_core::types::U256,
726 }
727 #[derive(
729 Clone,
730 ::ethers_contract::EthCall,
731 ::ethers_contract::EthDisplay,
732 Default,
733 Debug,
734 PartialEq,
735 Eq,
736 Hash
737 )]
738 #[ethcall(name = "redeem", abi = "redeem(uint256,address,address)")]
739 pub struct RedeemCall {
740 pub shares: ::ethers_core::types::U256,
741 pub receiver: ::ethers_core::types::Address,
742 pub owner: ::ethers_core::types::Address,
743 }
744 #[derive(
746 Clone,
747 ::ethers_contract::EthCall,
748 ::ethers_contract::EthDisplay,
749 Default,
750 Debug,
751 PartialEq,
752 Eq,
753 Hash
754 )]
755 #[ethcall(name = "symbol", abi = "symbol()")]
756 pub struct SymbolCall;
757 #[derive(
759 Clone,
760 ::ethers_contract::EthCall,
761 ::ethers_contract::EthDisplay,
762 Default,
763 Debug,
764 PartialEq,
765 Eq,
766 Hash
767 )]
768 #[ethcall(name = "totalAssets", abi = "totalAssets()")]
769 pub struct TotalAssetsCall;
770 #[derive(
772 Clone,
773 ::ethers_contract::EthCall,
774 ::ethers_contract::EthDisplay,
775 Default,
776 Debug,
777 PartialEq,
778 Eq,
779 Hash
780 )]
781 #[ethcall(name = "totalSupply", abi = "totalSupply()")]
782 pub struct TotalSupplyCall;
783 #[derive(
785 Clone,
786 ::ethers_contract::EthCall,
787 ::ethers_contract::EthDisplay,
788 Default,
789 Debug,
790 PartialEq,
791 Eq,
792 Hash
793 )]
794 #[ethcall(name = "transfer", abi = "transfer(address,uint256)")]
795 pub struct TransferCall {
796 pub to: ::ethers_core::types::Address,
797 pub amount: ::ethers_core::types::U256,
798 }
799 #[derive(
801 Clone,
802 ::ethers_contract::EthCall,
803 ::ethers_contract::EthDisplay,
804 Default,
805 Debug,
806 PartialEq,
807 Eq,
808 Hash
809 )]
810 #[ethcall(name = "transferFrom", abi = "transferFrom(address,address,uint256)")]
811 pub struct TransferFromCall {
812 pub from: ::ethers_core::types::Address,
813 pub to: ::ethers_core::types::Address,
814 pub amount: ::ethers_core::types::U256,
815 }
816 #[derive(
818 Clone,
819 ::ethers_contract::EthCall,
820 ::ethers_contract::EthDisplay,
821 Default,
822 Debug,
823 PartialEq,
824 Eq,
825 Hash
826 )]
827 #[ethcall(name = "withdraw", abi = "withdraw(uint256,address,address)")]
828 pub struct WithdrawCall {
829 pub assets: ::ethers_core::types::U256,
830 pub receiver: ::ethers_core::types::Address,
831 pub owner: ::ethers_core::types::Address,
832 }
833 #[derive(Clone, ::ethers_contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
835 pub enum IERC4626Calls {
836 Allowance(AllowanceCall),
837 Approve(ApproveCall),
838 Asset(AssetCall),
839 BalanceOf(BalanceOfCall),
840 ConvertToAssets(ConvertToAssetsCall),
841 ConvertToShares(ConvertToSharesCall),
842 Decimals(DecimalsCall),
843 Deposit(DepositCall),
844 MaxDeposit(MaxDepositCall),
845 MaxMint(MaxMintCall),
846 MaxRedeem(MaxRedeemCall),
847 MaxWithdraw(MaxWithdrawCall),
848 Mint(MintCall),
849 Name(NameCall),
850 PreviewDeposit(PreviewDepositCall),
851 PreviewMint(PreviewMintCall),
852 PreviewRedeem(PreviewRedeemCall),
853 PreviewWithdraw(PreviewWithdrawCall),
854 Redeem(RedeemCall),
855 Symbol(SymbolCall),
856 TotalAssets(TotalAssetsCall),
857 TotalSupply(TotalSupplyCall),
858 Transfer(TransferCall),
859 TransferFrom(TransferFromCall),
860 Withdraw(WithdrawCall),
861 }
862 impl ::ethers_core::abi::AbiDecode for IERC4626Calls {
863 fn decode(
864 data: impl AsRef<[u8]>,
865 ) -> ::core::result::Result<Self, ::ethers_core::abi::AbiError> {
866 let data = data.as_ref();
867 if let Ok(decoded)
868 = <AllowanceCall as ::ethers_core::abi::AbiDecode>::decode(data) {
869 return Ok(Self::Allowance(decoded));
870 }
871 if let Ok(decoded)
872 = <ApproveCall as ::ethers_core::abi::AbiDecode>::decode(data) {
873 return Ok(Self::Approve(decoded));
874 }
875 if let Ok(decoded)
876 = <AssetCall as ::ethers_core::abi::AbiDecode>::decode(data) {
877 return Ok(Self::Asset(decoded));
878 }
879 if let Ok(decoded)
880 = <BalanceOfCall as ::ethers_core::abi::AbiDecode>::decode(data) {
881 return Ok(Self::BalanceOf(decoded));
882 }
883 if let Ok(decoded)
884 = <ConvertToAssetsCall as ::ethers_core::abi::AbiDecode>::decode(data) {
885 return Ok(Self::ConvertToAssets(decoded));
886 }
887 if let Ok(decoded)
888 = <ConvertToSharesCall as ::ethers_core::abi::AbiDecode>::decode(data) {
889 return Ok(Self::ConvertToShares(decoded));
890 }
891 if let Ok(decoded)
892 = <DecimalsCall as ::ethers_core::abi::AbiDecode>::decode(data) {
893 return Ok(Self::Decimals(decoded));
894 }
895 if let Ok(decoded)
896 = <DepositCall as ::ethers_core::abi::AbiDecode>::decode(data) {
897 return Ok(Self::Deposit(decoded));
898 }
899 if let Ok(decoded)
900 = <MaxDepositCall as ::ethers_core::abi::AbiDecode>::decode(data) {
901 return Ok(Self::MaxDeposit(decoded));
902 }
903 if let Ok(decoded)
904 = <MaxMintCall as ::ethers_core::abi::AbiDecode>::decode(data) {
905 return Ok(Self::MaxMint(decoded));
906 }
907 if let Ok(decoded)
908 = <MaxRedeemCall as ::ethers_core::abi::AbiDecode>::decode(data) {
909 return Ok(Self::MaxRedeem(decoded));
910 }
911 if let Ok(decoded)
912 = <MaxWithdrawCall as ::ethers_core::abi::AbiDecode>::decode(data) {
913 return Ok(Self::MaxWithdraw(decoded));
914 }
915 if let Ok(decoded)
916 = <MintCall as ::ethers_core::abi::AbiDecode>::decode(data) {
917 return Ok(Self::Mint(decoded));
918 }
919 if let Ok(decoded)
920 = <NameCall as ::ethers_core::abi::AbiDecode>::decode(data) {
921 return Ok(Self::Name(decoded));
922 }
923 if let Ok(decoded)
924 = <PreviewDepositCall as ::ethers_core::abi::AbiDecode>::decode(data) {
925 return Ok(Self::PreviewDeposit(decoded));
926 }
927 if let Ok(decoded)
928 = <PreviewMintCall as ::ethers_core::abi::AbiDecode>::decode(data) {
929 return Ok(Self::PreviewMint(decoded));
930 }
931 if let Ok(decoded)
932 = <PreviewRedeemCall as ::ethers_core::abi::AbiDecode>::decode(data) {
933 return Ok(Self::PreviewRedeem(decoded));
934 }
935 if let Ok(decoded)
936 = <PreviewWithdrawCall as ::ethers_core::abi::AbiDecode>::decode(data) {
937 return Ok(Self::PreviewWithdraw(decoded));
938 }
939 if let Ok(decoded)
940 = <RedeemCall as ::ethers_core::abi::AbiDecode>::decode(data) {
941 return Ok(Self::Redeem(decoded));
942 }
943 if let Ok(decoded)
944 = <SymbolCall as ::ethers_core::abi::AbiDecode>::decode(data) {
945 return Ok(Self::Symbol(decoded));
946 }
947 if let Ok(decoded)
948 = <TotalAssetsCall as ::ethers_core::abi::AbiDecode>::decode(data) {
949 return Ok(Self::TotalAssets(decoded));
950 }
951 if let Ok(decoded)
952 = <TotalSupplyCall as ::ethers_core::abi::AbiDecode>::decode(data) {
953 return Ok(Self::TotalSupply(decoded));
954 }
955 if let Ok(decoded)
956 = <TransferCall as ::ethers_core::abi::AbiDecode>::decode(data) {
957 return Ok(Self::Transfer(decoded));
958 }
959 if let Ok(decoded)
960 = <TransferFromCall as ::ethers_core::abi::AbiDecode>::decode(data) {
961 return Ok(Self::TransferFrom(decoded));
962 }
963 if let Ok(decoded)
964 = <WithdrawCall as ::ethers_core::abi::AbiDecode>::decode(data) {
965 return Ok(Self::Withdraw(decoded));
966 }
967 Err(::ethers_core::abi::Error::InvalidData.into())
968 }
969 }
970 impl ::ethers_core::abi::AbiEncode for IERC4626Calls {
971 fn encode(self) -> Vec<u8> {
972 match self {
973 Self::Allowance(element) => {
974 ::ethers_core::abi::AbiEncode::encode(element)
975 }
976 Self::Approve(element) => ::ethers_core::abi::AbiEncode::encode(element),
977 Self::Asset(element) => ::ethers_core::abi::AbiEncode::encode(element),
978 Self::BalanceOf(element) => {
979 ::ethers_core::abi::AbiEncode::encode(element)
980 }
981 Self::ConvertToAssets(element) => {
982 ::ethers_core::abi::AbiEncode::encode(element)
983 }
984 Self::ConvertToShares(element) => {
985 ::ethers_core::abi::AbiEncode::encode(element)
986 }
987 Self::Decimals(element) => ::ethers_core::abi::AbiEncode::encode(element),
988 Self::Deposit(element) => ::ethers_core::abi::AbiEncode::encode(element),
989 Self::MaxDeposit(element) => {
990 ::ethers_core::abi::AbiEncode::encode(element)
991 }
992 Self::MaxMint(element) => ::ethers_core::abi::AbiEncode::encode(element),
993 Self::MaxRedeem(element) => {
994 ::ethers_core::abi::AbiEncode::encode(element)
995 }
996 Self::MaxWithdraw(element) => {
997 ::ethers_core::abi::AbiEncode::encode(element)
998 }
999 Self::Mint(element) => ::ethers_core::abi::AbiEncode::encode(element),
1000 Self::Name(element) => ::ethers_core::abi::AbiEncode::encode(element),
1001 Self::PreviewDeposit(element) => {
1002 ::ethers_core::abi::AbiEncode::encode(element)
1003 }
1004 Self::PreviewMint(element) => {
1005 ::ethers_core::abi::AbiEncode::encode(element)
1006 }
1007 Self::PreviewRedeem(element) => {
1008 ::ethers_core::abi::AbiEncode::encode(element)
1009 }
1010 Self::PreviewWithdraw(element) => {
1011 ::ethers_core::abi::AbiEncode::encode(element)
1012 }
1013 Self::Redeem(element) => ::ethers_core::abi::AbiEncode::encode(element),
1014 Self::Symbol(element) => ::ethers_core::abi::AbiEncode::encode(element),
1015 Self::TotalAssets(element) => {
1016 ::ethers_core::abi::AbiEncode::encode(element)
1017 }
1018 Self::TotalSupply(element) => {
1019 ::ethers_core::abi::AbiEncode::encode(element)
1020 }
1021 Self::Transfer(element) => ::ethers_core::abi::AbiEncode::encode(element),
1022 Self::TransferFrom(element) => {
1023 ::ethers_core::abi::AbiEncode::encode(element)
1024 }
1025 Self::Withdraw(element) => ::ethers_core::abi::AbiEncode::encode(element),
1026 }
1027 }
1028 }
1029 impl ::core::fmt::Display for IERC4626Calls {
1030 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1031 match self {
1032 Self::Allowance(element) => ::core::fmt::Display::fmt(element, f),
1033 Self::Approve(element) => ::core::fmt::Display::fmt(element, f),
1034 Self::Asset(element) => ::core::fmt::Display::fmt(element, f),
1035 Self::BalanceOf(element) => ::core::fmt::Display::fmt(element, f),
1036 Self::ConvertToAssets(element) => ::core::fmt::Display::fmt(element, f),
1037 Self::ConvertToShares(element) => ::core::fmt::Display::fmt(element, f),
1038 Self::Decimals(element) => ::core::fmt::Display::fmt(element, f),
1039 Self::Deposit(element) => ::core::fmt::Display::fmt(element, f),
1040 Self::MaxDeposit(element) => ::core::fmt::Display::fmt(element, f),
1041 Self::MaxMint(element) => ::core::fmt::Display::fmt(element, f),
1042 Self::MaxRedeem(element) => ::core::fmt::Display::fmt(element, f),
1043 Self::MaxWithdraw(element) => ::core::fmt::Display::fmt(element, f),
1044 Self::Mint(element) => ::core::fmt::Display::fmt(element, f),
1045 Self::Name(element) => ::core::fmt::Display::fmt(element, f),
1046 Self::PreviewDeposit(element) => ::core::fmt::Display::fmt(element, f),
1047 Self::PreviewMint(element) => ::core::fmt::Display::fmt(element, f),
1048 Self::PreviewRedeem(element) => ::core::fmt::Display::fmt(element, f),
1049 Self::PreviewWithdraw(element) => ::core::fmt::Display::fmt(element, f),
1050 Self::Redeem(element) => ::core::fmt::Display::fmt(element, f),
1051 Self::Symbol(element) => ::core::fmt::Display::fmt(element, f),
1052 Self::TotalAssets(element) => ::core::fmt::Display::fmt(element, f),
1053 Self::TotalSupply(element) => ::core::fmt::Display::fmt(element, f),
1054 Self::Transfer(element) => ::core::fmt::Display::fmt(element, f),
1055 Self::TransferFrom(element) => ::core::fmt::Display::fmt(element, f),
1056 Self::Withdraw(element) => ::core::fmt::Display::fmt(element, f),
1057 }
1058 }
1059 }
1060 impl ::core::convert::From<AllowanceCall> for IERC4626Calls {
1061 fn from(value: AllowanceCall) -> Self {
1062 Self::Allowance(value)
1063 }
1064 }
1065 impl ::core::convert::From<ApproveCall> for IERC4626Calls {
1066 fn from(value: ApproveCall) -> Self {
1067 Self::Approve(value)
1068 }
1069 }
1070 impl ::core::convert::From<AssetCall> for IERC4626Calls {
1071 fn from(value: AssetCall) -> Self {
1072 Self::Asset(value)
1073 }
1074 }
1075 impl ::core::convert::From<BalanceOfCall> for IERC4626Calls {
1076 fn from(value: BalanceOfCall) -> Self {
1077 Self::BalanceOf(value)
1078 }
1079 }
1080 impl ::core::convert::From<ConvertToAssetsCall> for IERC4626Calls {
1081 fn from(value: ConvertToAssetsCall) -> Self {
1082 Self::ConvertToAssets(value)
1083 }
1084 }
1085 impl ::core::convert::From<ConvertToSharesCall> for IERC4626Calls {
1086 fn from(value: ConvertToSharesCall) -> Self {
1087 Self::ConvertToShares(value)
1088 }
1089 }
1090 impl ::core::convert::From<DecimalsCall> for IERC4626Calls {
1091 fn from(value: DecimalsCall) -> Self {
1092 Self::Decimals(value)
1093 }
1094 }
1095 impl ::core::convert::From<DepositCall> for IERC4626Calls {
1096 fn from(value: DepositCall) -> Self {
1097 Self::Deposit(value)
1098 }
1099 }
1100 impl ::core::convert::From<MaxDepositCall> for IERC4626Calls {
1101 fn from(value: MaxDepositCall) -> Self {
1102 Self::MaxDeposit(value)
1103 }
1104 }
1105 impl ::core::convert::From<MaxMintCall> for IERC4626Calls {
1106 fn from(value: MaxMintCall) -> Self {
1107 Self::MaxMint(value)
1108 }
1109 }
1110 impl ::core::convert::From<MaxRedeemCall> for IERC4626Calls {
1111 fn from(value: MaxRedeemCall) -> Self {
1112 Self::MaxRedeem(value)
1113 }
1114 }
1115 impl ::core::convert::From<MaxWithdrawCall> for IERC4626Calls {
1116 fn from(value: MaxWithdrawCall) -> Self {
1117 Self::MaxWithdraw(value)
1118 }
1119 }
1120 impl ::core::convert::From<MintCall> for IERC4626Calls {
1121 fn from(value: MintCall) -> Self {
1122 Self::Mint(value)
1123 }
1124 }
1125 impl ::core::convert::From<NameCall> for IERC4626Calls {
1126 fn from(value: NameCall) -> Self {
1127 Self::Name(value)
1128 }
1129 }
1130 impl ::core::convert::From<PreviewDepositCall> for IERC4626Calls {
1131 fn from(value: PreviewDepositCall) -> Self {
1132 Self::PreviewDeposit(value)
1133 }
1134 }
1135 impl ::core::convert::From<PreviewMintCall> for IERC4626Calls {
1136 fn from(value: PreviewMintCall) -> Self {
1137 Self::PreviewMint(value)
1138 }
1139 }
1140 impl ::core::convert::From<PreviewRedeemCall> for IERC4626Calls {
1141 fn from(value: PreviewRedeemCall) -> Self {
1142 Self::PreviewRedeem(value)
1143 }
1144 }
1145 impl ::core::convert::From<PreviewWithdrawCall> for IERC4626Calls {
1146 fn from(value: PreviewWithdrawCall) -> Self {
1147 Self::PreviewWithdraw(value)
1148 }
1149 }
1150 impl ::core::convert::From<RedeemCall> for IERC4626Calls {
1151 fn from(value: RedeemCall) -> Self {
1152 Self::Redeem(value)
1153 }
1154 }
1155 impl ::core::convert::From<SymbolCall> for IERC4626Calls {
1156 fn from(value: SymbolCall) -> Self {
1157 Self::Symbol(value)
1158 }
1159 }
1160 impl ::core::convert::From<TotalAssetsCall> for IERC4626Calls {
1161 fn from(value: TotalAssetsCall) -> Self {
1162 Self::TotalAssets(value)
1163 }
1164 }
1165 impl ::core::convert::From<TotalSupplyCall> for IERC4626Calls {
1166 fn from(value: TotalSupplyCall) -> Self {
1167 Self::TotalSupply(value)
1168 }
1169 }
1170 impl ::core::convert::From<TransferCall> for IERC4626Calls {
1171 fn from(value: TransferCall) -> Self {
1172 Self::Transfer(value)
1173 }
1174 }
1175 impl ::core::convert::From<TransferFromCall> for IERC4626Calls {
1176 fn from(value: TransferFromCall) -> Self {
1177 Self::TransferFrom(value)
1178 }
1179 }
1180 impl ::core::convert::From<WithdrawCall> for IERC4626Calls {
1181 fn from(value: WithdrawCall) -> Self {
1182 Self::Withdraw(value)
1183 }
1184 }
1185 #[derive(
1187 Clone,
1188 ::ethers_contract::EthAbiType,
1189 ::ethers_contract::EthAbiCodec,
1190 Default,
1191 Debug,
1192 PartialEq,
1193 Eq,
1194 Hash
1195 )]
1196 pub struct AllowanceReturn(pub ::ethers_core::types::U256);
1197 #[derive(
1199 Clone,
1200 ::ethers_contract::EthAbiType,
1201 ::ethers_contract::EthAbiCodec,
1202 Default,
1203 Debug,
1204 PartialEq,
1205 Eq,
1206 Hash
1207 )]
1208 pub struct ApproveReturn(pub bool);
1209 #[derive(
1211 Clone,
1212 ::ethers_contract::EthAbiType,
1213 ::ethers_contract::EthAbiCodec,
1214 Default,
1215 Debug,
1216 PartialEq,
1217 Eq,
1218 Hash
1219 )]
1220 pub struct AssetReturn {
1221 pub asset_token_address: ::ethers_core::types::Address,
1222 }
1223 #[derive(
1225 Clone,
1226 ::ethers_contract::EthAbiType,
1227 ::ethers_contract::EthAbiCodec,
1228 Default,
1229 Debug,
1230 PartialEq,
1231 Eq,
1232 Hash
1233 )]
1234 pub struct BalanceOfReturn(pub ::ethers_core::types::U256);
1235 #[derive(
1237 Clone,
1238 ::ethers_contract::EthAbiType,
1239 ::ethers_contract::EthAbiCodec,
1240 Default,
1241 Debug,
1242 PartialEq,
1243 Eq,
1244 Hash
1245 )]
1246 pub struct ConvertToAssetsReturn {
1247 pub assets: ::ethers_core::types::U256,
1248 }
1249 #[derive(
1251 Clone,
1252 ::ethers_contract::EthAbiType,
1253 ::ethers_contract::EthAbiCodec,
1254 Default,
1255 Debug,
1256 PartialEq,
1257 Eq,
1258 Hash
1259 )]
1260 pub struct ConvertToSharesReturn {
1261 pub shares: ::ethers_core::types::U256,
1262 }
1263 #[derive(
1265 Clone,
1266 ::ethers_contract::EthAbiType,
1267 ::ethers_contract::EthAbiCodec,
1268 Default,
1269 Debug,
1270 PartialEq,
1271 Eq,
1272 Hash
1273 )]
1274 pub struct DecimalsReturn(pub u8);
1275 #[derive(
1277 Clone,
1278 ::ethers_contract::EthAbiType,
1279 ::ethers_contract::EthAbiCodec,
1280 Default,
1281 Debug,
1282 PartialEq,
1283 Eq,
1284 Hash
1285 )]
1286 pub struct DepositReturn {
1287 pub shares: ::ethers_core::types::U256,
1288 }
1289 #[derive(
1291 Clone,
1292 ::ethers_contract::EthAbiType,
1293 ::ethers_contract::EthAbiCodec,
1294 Default,
1295 Debug,
1296 PartialEq,
1297 Eq,
1298 Hash
1299 )]
1300 pub struct MaxDepositReturn {
1301 pub max_assets: ::ethers_core::types::U256,
1302 }
1303 #[derive(
1305 Clone,
1306 ::ethers_contract::EthAbiType,
1307 ::ethers_contract::EthAbiCodec,
1308 Default,
1309 Debug,
1310 PartialEq,
1311 Eq,
1312 Hash
1313 )]
1314 pub struct MaxMintReturn {
1315 pub max_shares: ::ethers_core::types::U256,
1316 }
1317 #[derive(
1319 Clone,
1320 ::ethers_contract::EthAbiType,
1321 ::ethers_contract::EthAbiCodec,
1322 Default,
1323 Debug,
1324 PartialEq,
1325 Eq,
1326 Hash
1327 )]
1328 pub struct MaxRedeemReturn {
1329 pub max_shares: ::ethers_core::types::U256,
1330 }
1331 #[derive(
1333 Clone,
1334 ::ethers_contract::EthAbiType,
1335 ::ethers_contract::EthAbiCodec,
1336 Default,
1337 Debug,
1338 PartialEq,
1339 Eq,
1340 Hash
1341 )]
1342 pub struct MaxWithdrawReturn {
1343 pub max_assets: ::ethers_core::types::U256,
1344 }
1345 #[derive(
1347 Clone,
1348 ::ethers_contract::EthAbiType,
1349 ::ethers_contract::EthAbiCodec,
1350 Default,
1351 Debug,
1352 PartialEq,
1353 Eq,
1354 Hash
1355 )]
1356 pub struct MintReturn {
1357 pub assets: ::ethers_core::types::U256,
1358 }
1359 #[derive(
1361 Clone,
1362 ::ethers_contract::EthAbiType,
1363 ::ethers_contract::EthAbiCodec,
1364 Default,
1365 Debug,
1366 PartialEq,
1367 Eq,
1368 Hash
1369 )]
1370 pub struct NameReturn(pub ::std::string::String);
1371 #[derive(
1373 Clone,
1374 ::ethers_contract::EthAbiType,
1375 ::ethers_contract::EthAbiCodec,
1376 Default,
1377 Debug,
1378 PartialEq,
1379 Eq,
1380 Hash
1381 )]
1382 pub struct PreviewDepositReturn {
1383 pub shares: ::ethers_core::types::U256,
1384 }
1385 #[derive(
1387 Clone,
1388 ::ethers_contract::EthAbiType,
1389 ::ethers_contract::EthAbiCodec,
1390 Default,
1391 Debug,
1392 PartialEq,
1393 Eq,
1394 Hash
1395 )]
1396 pub struct PreviewMintReturn {
1397 pub assets: ::ethers_core::types::U256,
1398 }
1399 #[derive(
1401 Clone,
1402 ::ethers_contract::EthAbiType,
1403 ::ethers_contract::EthAbiCodec,
1404 Default,
1405 Debug,
1406 PartialEq,
1407 Eq,
1408 Hash
1409 )]
1410 pub struct PreviewRedeemReturn {
1411 pub assets: ::ethers_core::types::U256,
1412 }
1413 #[derive(
1415 Clone,
1416 ::ethers_contract::EthAbiType,
1417 ::ethers_contract::EthAbiCodec,
1418 Default,
1419 Debug,
1420 PartialEq,
1421 Eq,
1422 Hash
1423 )]
1424 pub struct PreviewWithdrawReturn {
1425 pub shares: ::ethers_core::types::U256,
1426 }
1427 #[derive(
1429 Clone,
1430 ::ethers_contract::EthAbiType,
1431 ::ethers_contract::EthAbiCodec,
1432 Default,
1433 Debug,
1434 PartialEq,
1435 Eq,
1436 Hash
1437 )]
1438 pub struct RedeemReturn {
1439 pub assets: ::ethers_core::types::U256,
1440 }
1441 #[derive(
1443 Clone,
1444 ::ethers_contract::EthAbiType,
1445 ::ethers_contract::EthAbiCodec,
1446 Default,
1447 Debug,
1448 PartialEq,
1449 Eq,
1450 Hash
1451 )]
1452 pub struct SymbolReturn(pub ::std::string::String);
1453 #[derive(
1455 Clone,
1456 ::ethers_contract::EthAbiType,
1457 ::ethers_contract::EthAbiCodec,
1458 Default,
1459 Debug,
1460 PartialEq,
1461 Eq,
1462 Hash
1463 )]
1464 pub struct TotalAssetsReturn {
1465 pub total_managed_assets: ::ethers_core::types::U256,
1466 }
1467 #[derive(
1469 Clone,
1470 ::ethers_contract::EthAbiType,
1471 ::ethers_contract::EthAbiCodec,
1472 Default,
1473 Debug,
1474 PartialEq,
1475 Eq,
1476 Hash
1477 )]
1478 pub struct TotalSupplyReturn(pub ::ethers_core::types::U256);
1479 #[derive(
1481 Clone,
1482 ::ethers_contract::EthAbiType,
1483 ::ethers_contract::EthAbiCodec,
1484 Default,
1485 Debug,
1486 PartialEq,
1487 Eq,
1488 Hash
1489 )]
1490 pub struct TransferReturn(pub bool);
1491 #[derive(
1493 Clone,
1494 ::ethers_contract::EthAbiType,
1495 ::ethers_contract::EthAbiCodec,
1496 Default,
1497 Debug,
1498 PartialEq,
1499 Eq,
1500 Hash
1501 )]
1502 pub struct TransferFromReturn(pub bool);
1503 #[derive(
1505 Clone,
1506 ::ethers_contract::EthAbiType,
1507 ::ethers_contract::EthAbiCodec,
1508 Default,
1509 Debug,
1510 PartialEq,
1511 Eq,
1512 Hash
1513 )]
1514 pub struct WithdrawReturn {
1515 pub shares: ::ethers_core::types::U256,
1516 }
1517}