Skip to main content

Solidity API

Sorter​

ATLAS​

contract IAtlas ATLAS

VERIFICATION​

contract IAtlasVerification VERIFICATION

SortingData​

struct SortingData {
uint256 amount;
bool valid;
}

constructor​

constructor(address _atlas) public

sortBids​

function sortBids(struct UserOperation userOp, struct SolverOperation[] solverOps) external view returns (struct SolverOperation[])

_verifyBidFormat​

function _verifyBidFormat(address bidToken, struct SolverOperation solverOp) internal pure returns (bool)

_verifySolverEligibility​

function _verifySolverEligibility(struct DAppConfig dConfig, struct UserOperation userOp, struct SolverOperation solverOp, uint256 totalSurchargeRate) internal view returns (bool)

Verifies that the solver is eligible Does not check solver signature as it might be trusted (solverOp.from == bundler) Checks other than signature are same as those done in verifySolverOp() in AtlasVerification and _validateSolverOpGasAndValue() and _validateSolverOpDeadline() in Atlas

_getSortingData​

function _getSortingData(struct DAppConfig dConfig, struct UserOperation userOp, struct SolverOperation[] solverOps, uint256 count) internal view returns (struct Sorter.SortingData[], uint256)

_sort​

function _sort(struct Sorter.SortingData[] sortingData, uint256 count, uint256 invalid) internal pure returns (uint256[])