Integrations
  • Propeller Protocol Lib
  • Logic
    • VM Integration
      • Ethereum: Solidity
    • Native Integration
  • Indexing
    • Overview
    • General Integration Steps
      • 1. Setup
      • 2. Getting Started
      • 3. Substream Package Structure
      • 4. Testing
    • Common Problems & Patterns
      • Tracking Components
      • Normalizing relative ERC20 Balances
      • Tracking Contract Storage
      • Custom protobuf models
    • Reserved Attributes
  • Execution
    • Overview
    • Swap Executor
    • Swap Encoder
Powered by GitBook
On this page
  1. Execution

Overview

Understanding how the execution layer works.

PreviousReserved AttributesNextSwap Executor

Last updated 7 months ago

: The SwapExecutor provides a unified interface for executing swaps. It handles interactions with the underlying liquidity pools, manages token approvals, controls input/output amounts, and ensures gas-efficient and secure execution. Each protocol must implement its own SwapExecutor (a Solidity contract) tailored to its specific logic and requirements.

: The SwapEncoder encodes protocol components and swap parameters into valid calldata for the corresponding SwapExecutor contract. It ensures that swap details—including input/output tokens, pool addresses, and other protocol-specific parameters—are accurately formatted and encoded before being sent to the SwapExecutor. Each protocol must implement its own SwapStructEncoder Python class to maintain compatibility with its SwapExecutor.

SwapExecutor
SwapEncoder