Trait SwapOpcodesEncoderTrait
Source pub trait SwapOpcodesEncoderTrait:
Send
+ Sync
+ 'static {
// Required methods
fn encode_swap_in_amount_provided(
&self,
swap_opcodes: &mut MulticallerCalls,
abi_encoder: &dyn ProtocolAbiSwapEncoderTrait,
token_from_address: Address,
token_to_address: Address,
amount_in: SwapAmountType,
cur_pool: &dyn Pool,
next_pool: Option<&dyn Pool>,
payload: MulticallerOpcodesPayload,
multicaller_address: Address,
) -> Result<()>;
fn encode_swap_out_amount_provided(
&self,
swap_opcodes: &mut MulticallerCalls,
abi_encoder: &dyn ProtocolAbiSwapEncoderTrait,
token_from_address: Address,
token_to_address: Address,
amount_out: SwapAmountType,
cur_pool: &dyn Pool,
next_pool: Option<&dyn Pool>,
payload: MulticallerOpcodesPayload,
multicaller_address: Address,
) -> Result<()>;
// Provided methods
fn encode_flash_swap_in_amount_provided(
&self,
_swap_opcodes: &mut MulticallerCalls,
_abi_encoder: &dyn ProtocolAbiSwapEncoderTrait,
_token_from_address: Address,
_token_to_address: Address,
_amount_in: SwapAmountType,
_flash_pool: &dyn Pool,
_prev_pool: Option<&dyn Pool>,
_payload: MulticallerOpcodesPayload,
_multicaller_address: Address,
) -> Result<()> { ... }
fn encode_flash_swap_out_amount_provided(
&self,
_swap_opcodes: &mut MulticallerCalls,
_abi_encoder: &dyn ProtocolAbiSwapEncoderTrait,
_token_from_address: Address,
_token_to_address: Address,
_amount_out: SwapAmountType,
_flash_pool: &dyn Pool,
_next_pool: Option<&dyn Pool>,
_payload: MulticallerOpcodesPayload,
_multicaller_address: Address,
) -> Result<()> { ... }
}