Mangrove
Developper
Developper
  • Welcome
  • Protocol
    • Introduction
    • Technical References
      • Overview
      • Ticks, ratios, and prices
      • Offer-list
        • Views on offers
      • Market-order
        • Delegation
      • Creating & Updating offers
        • Maker contract
        • Offer provisions
        • Gas requirement
        • Public data structures
        • Executing offers
      • Cleaning offers
      • Governance-parameters
        • Global variables
        • Local variables
        • Data structures and views
      • Periphery Contracts
        • MgvReader
        • MgvOracle
      • Literate Source Code
    • Background
      • Taking available liquidity
      • Making liquidity available
      • Reneging on offers
  • Strat Lib
    • What is the Strat Library?
    • Getting-started
      • Set Up Your Local Environment
      • Post a Smart Offer
    • Guides
      • Unlocking liquidity
      • Reposting an offer in the posthook
      • Using last look to renege trades
      • Determining gas requirements
      • Creating a Direct contract
      • Deploying your contract
      • Testing a maker contract
      • Safe offer logic guidelines
      • Approvals
    • Technical references
      • Principal hooks
      • Liquidity routing
      • API preferences
        • Core
          • SRC
            • IMangrove
        • Strats
          • SRC
            • Strategies
              • MangroveOffer
              • MangroveOrder
              • Integrations
                • AaveV3Borrower
                • AaveV3BorrowerImplementation
                • AaveV3BorrowerStorage
                • AaveV3Lender
                • CompoundModule
              • Interfaces
                • IForwarder
                • ILiquidityProvider
                • IOfferLogic
                • IOrderLogic
              • Offer_forwarder
                • Abstract
                  • Forwarder
              • Offer_maker
                • Abstract
                  • Direct
                • Market_making
                  • Kandel
                    • AaveKandel
                    • AaveKandelSeeder
                    • KandelSeeder
                    • Abstract
                      • AbstractKandelSeeder
                      • CoreKandel
                      • DirectWithBidsAndAsksDistribution
                      • GeometricKandel
                      • HasIndexedBidsAndAsks
                      • KandelLib
                      • TradesBaseQuotePair
              • Routeurs
                • SimpleRouter
                • Abstract
                  • AbstractRouter
                • Integrations
                  • AavePooledRouter
                  • HasAaveBalanceMemoizer
              • Utils
                • AccessControlled
              • Vendor
                • AAVE
                  • V3
                    • Contracts
                      • Dependencies
                        • Oppenzeppelin
                          • Contracts
                            • IERC20
                      • Interfaces
                        • IAToken
                        • IAaveIncentivesController
                        • IAaveOracle
                        • ICreditDelegationToken
                        • IInitializableAToken
                        • IPool
                        • IPoolAddressesProvider
                        • IPriceOracleGetter
                        • IScaledBalanceToken
                      • Protocol
                        • Libraries
                          • Configurations
                            • ReserveConfiguration
                          • Helpers
                            • Errors
                          • Types
                            • DataTypes
                    • Periphery
                      • Contracts
                        • MISC
                          • Interfaces
                            • IEACAggregatorProxy
                        • Rewards
                          • Interfaces
                            • IRewardsController
                            • IRewardsDistributor
                            • ITransferStrategyBase
                          • Libraries
                            • RewardsDataTypes
                • Compound
                  • CarefulMath
                  • Exponential
                  • ExponentialNoError
                  • ICompound
    • Background
      • Building Blocks
        • MangroveOffer
        • Direct
        • Forwarder
  • Vaults
    • Understanding vaults
      • Oracles
    • Managing a vault (CLI)
      • Deploying an oracle
      • Creating a vault
      • Monitoring the vault
      • Setting the vault position
      • Setting the fee data
      • Rebalancing
      • Adding or removing liquidity
    • Custom interactions
      • Oracles
      • Vault Factory
      • Managing a vault
        • Setting the position
        • Rebalancing
        • Setting a manager
        • Setting fee
  • Keeper Bots
    • Keeper Bots
    • Guides
      • Using borrowed funds for cleaning
    • Backgroud
      • The role of cleaning bots in Mangrove
      • The role of gas price updater bots in Mangrove
  • Adresses
    • Deployment Addresses
  • Quick Links
    • Glossary
    • Website
    • Whitepaper
Powered by GitBook
On this page
  • SetLength
  • Parameters
  • SetIndexMapping
  • Parameters
  • length
  • offerIdOfIndex
  • Parameters
  • Return Values
  • indexOfOfferId
  • Parameters
  • Return Values
  • setIndexMapping
  • Parameters
  • setLength
  • Parameters
  1. Strat Lib
  2. Technical references
  3. API preferences
  4. Strats
  5. SRC
  6. Strategies
  7. Offer_maker
  8. Market_making
  9. Kandel
  10. Abstract

HasIndexedBidsAndAsks

utilizes the IHasOfferListOfOfferType contract.

SetLength

event SetLength(uint256 value)

the length of the index has been set. By emitting this data, an indexer will be able to keep track of what length is used.

Parameters

Name
Type
Description

value

uint256

the length.

SetIndexMapping

event SetIndexMapping(enum OfferType ba, uint256 index, uint256 offerId)

a new offer of type ba with offerId was created at price index By emitting this data, an indexer will be able to keep track of what offer has what index.

Parameters

Name
Type
Description

ba

enum OfferType

the offer type

index

uint256

the index

offerId

uint256

the Mangrove offer id.

length

uint256 length

the length of the map.

offerIdOfIndex

function offerIdOfIndex(enum OfferType ba, uint256 index) public view returns (uint256 offerId)

maps index of offers to offer id on Mangrove.

Parameters

Name
Type
Description

ba

enum OfferType

the offer type

index

uint256

the index

Return Values

Name
Type
Description

offerId

uint256

the Mangrove offer id.

indexOfOfferId

function indexOfOfferId(enum OfferType ba, uint256 offerId) public view returns (uint256 index)

Maps an offer type and Mangrove offer id to index.

Parameters

Name
Type
Description

ba

enum OfferType

the offer type

offerId

uint256

the Mangrove offer id.

Return Values

Name
Type
Description

index

uint256

the index.

setIndexMapping

function setIndexMapping(enum OfferType ba, uint256 index, uint256 offerId) internal

Sets the Mangrove offer id for an index and vice versa.

Parameters

Name
Type
Description

ba

enum OfferType

the offer type

index

uint256

the index

offerId

uint256

the Mangrove offer id.

setLength

function setLength(uint256 length_) internal

sets the length of the map.

Parameters

Name
Type
Description

length_

uint256

the new length.

PreviousGeometricKandelNextKandelLib