pub enum UserTransferType {
TransferFromPermit2,
TransferFrom,
None,
}Expand description
Specifies the method for transferring user funds into Tycho execution.
Options:
-
TransferFromPermit2: Use Permit2 for token transfer.- You must manually approve the Permit2 contract and sign the permit object externally
(outside
tycho-execution).
- You must manually approve the Permit2 contract and sign the permit object externally
(outside
-
TransferFrom: Use standard ERC-20 approval andtransferFrom.- You must approve the Tycho Router contract to spend your tokens via standard
approve()calls.
- You must approve the Tycho Router contract to spend your tokens via standard
-
None: No transfer will be performed.- Assumes the tokens are already present in the Tycho Router.
- Warning: This is an advanced mode. Ensure your logic guarantees that the tokens are already in the router at the time of execution.
- The Tycho router is not designed to safely hold tokens. If tokens are not transferred and used in the same transaction, they will be permanently lost.
Variants§
Trait Implementations§
Source§impl Clone for UserTransferType
impl Clone for UserTransferType
Source§fn clone(&self) -> UserTransferType
fn clone(&self) -> UserTransferType
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for UserTransferType
impl Debug for UserTransferType
Source§impl PartialEq for UserTransferType
impl PartialEq for UserTransferType
Source§impl ValueEnum for UserTransferType
impl ValueEnum for UserTransferType
impl StructuralPartialEq for UserTransferType
Auto Trait Implementations§
impl Freeze for UserTransferType
impl RefUnwindSafe for UserTransferType
impl Send for UserTransferType
impl Sync for UserTransferType
impl Unpin for UserTransferType
impl UnwindSafe for UserTransferType
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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