contracts

package
v0.9.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 23, 2020 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// FluxAggregatorName is the name of Chainlink's Ethereum contract for
	// aggregating numerical data such as prices.
	FluxAggregatorName = "FluxAggregator"
)

Variables

View Source
var (
	// AggregatorNewRoundLogTopic20191220 is the NewRound filter topic for
	// the FluxAggregator as of Dec. 20th 2019. Eagerly fails if not found.
	AggregatorNewRoundLogTopic20191220 = eth.MustGetV6ContractEventID("FluxAggregator", "NewRound")
	// AggregatorAnswerUpdatedLogTopic20191220 is the AnswerUpdated filter topic for
	// the FluxAggregator as of Dec. 20th 2019. Eagerly fails if not found.
	AggregatorAnswerUpdatedLogTopic20191220 = eth.MustGetV6ContractEventID("FluxAggregator", "AnswerUpdated")
)

Functions

func NewFlagsDecodingLogListener added in v0.9.0

func NewFlagsDecodingLogListener(
	contract *Flags,
	innerListener eth.LogListener,
) eth.LogListener

Types

type Flags added in v0.9.0

type Flags struct {
	Address common.Address
	flags_wrapper.Flags
}

func NewFlagsContract added in v0.9.0

func NewFlagsContract(address common.Address, backend bind.ContractBackend) (*Flags, error)

type FluxAggregator

type FluxAggregator interface {
	eth.ConnectedContract
	RoundState(oracle common.Address, roundID uint32) (FluxAggregatorRoundState, error)
	GetOracles() ([]common.Address, error)
}

func NewFluxAggregator

func NewFluxAggregator(address common.Address, ethClient eth.Client, logBroadcaster eth.LogBroadcaster) (FluxAggregator, error)

type FluxAggregatorRoundState

type FluxAggregatorRoundState struct {
	ReportableRoundID uint32   `abi:"_roundId" json:"reportableRoundID"`
	EligibleToSubmit  bool     `abi:"_eligibleToSubmit" json:"eligibleToSubmit"`
	LatestAnswer      *big.Int `abi:"_latestSubmission" json:"latestAnswer,omitempty"`
	Timeout           uint64   `abi:"_timeout" json:"timeout"`
	StartedAt         uint64   `abi:"_startedAt" json:"startedAt"`
	AvailableFunds    *big.Int `abi:"_availableFunds" json:"availableFunds,omitempty"`
	PaymentAmount     *big.Int `abi:"_paymentAmount" json:"paymentAmount,omitempty"`
	OracleCount       uint8    `abi:"_oracleCount" json:"oracleCount"`
}

func (FluxAggregatorRoundState) TimesOutAt

func (rs FluxAggregatorRoundState) TimesOutAt() uint64

type LogAnswerUpdated

type LogAnswerUpdated struct {
	types.Log
	Current   *big.Int
	RoundId   *big.Int
	UpdatedAt *big.Int
}

type LogNewRound

type LogNewRound struct {
	types.Log
	RoundId   *big.Int
	StartedBy common.Address
	// seconds since unix epoch
	StartedAt *big.Int
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL