mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-10 14:03:46 +00:00
patch: Add safe and finalized tags to ethclient SDK (#202)
add safe and finalized tags to ethclient SDK
This commit is contained in:
parent
cdaea93962
commit
08ba436d8b
2 changed files with 18 additions and 4 deletions
|
|
@ -547,10 +547,22 @@ func toBlockNumArg(number *big.Int) string {
|
||||||
if number == nil {
|
if number == nil {
|
||||||
return "latest"
|
return "latest"
|
||||||
}
|
}
|
||||||
pending := big.NewInt(-1)
|
latest := big.NewInt(int64(rpc.LatestBlockNumber))
|
||||||
|
if number.Cmp(latest) == 0 {
|
||||||
|
return "latest"
|
||||||
|
}
|
||||||
|
pending := big.NewInt(int64(rpc.PendingBlockNumber))
|
||||||
if number.Cmp(pending) == 0 {
|
if number.Cmp(pending) == 0 {
|
||||||
return "pending"
|
return "pending"
|
||||||
}
|
}
|
||||||
|
finalized := big.NewInt(int64(rpc.FinalizedBlockNumber))
|
||||||
|
if number.Cmp(finalized) == 0 {
|
||||||
|
return "finalized"
|
||||||
|
}
|
||||||
|
safe := big.NewInt(int64(rpc.SafeBlockNumber))
|
||||||
|
if number.Cmp(safe) == 0 {
|
||||||
|
return "safe"
|
||||||
|
}
|
||||||
return hexutil.EncodeBig(number)
|
return hexutil.EncodeBig(number)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -58,9 +58,11 @@ type jsonWriter interface {
|
||||||
type BlockNumber int64
|
type BlockNumber int64
|
||||||
|
|
||||||
const (
|
const (
|
||||||
PendingBlockNumber = BlockNumber(-2)
|
SafeBlockNumber = BlockNumber(-4)
|
||||||
LatestBlockNumber = BlockNumber(-1)
|
FinalizedBlockNumber = BlockNumber(-3)
|
||||||
EarliestBlockNumber = BlockNumber(0)
|
PendingBlockNumber = BlockNumber(-2)
|
||||||
|
LatestBlockNumber = BlockNumber(-1)
|
||||||
|
EarliestBlockNumber = BlockNumber(0)
|
||||||
)
|
)
|
||||||
|
|
||||||
// UnmarshalJSON parses the given JSON fragment into a BlockNumber. It supports:
|
// UnmarshalJSON parses the given JSON fragment into a BlockNumber. It supports:
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue