abi

package
v1.2.4 Latest Latest
Warning

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

Go to latest
Published: Aug 7, 2019 License: MIT, MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MethodNameMinerReward = "MinerReward"

	VariableNameMinerRewardInfo = "MinerRewardInfo"
)
View Source
const (
	MethodNameMintage         = "Mintage"
	MethodNameMintageWithdraw = "Withdraw"
	VariableNameToken         = "token"
	VariableNameGenesisToken  = "genesisToken"
)
View Source
const (
	MethodNEP5Pledge         = "NEP5Pledge"
	MethodWithdrawNEP5Pledge = "WithdrawNEP5Pledge"
	VariableNEP5PledgeInfo   = "nep5PledgeInfo"
)
View Source
const (
	MethodNameUnsignedAirdropRewards   = "UnsignedAirdropRewards"
	MethodNameAirdropRewards           = "AirdropRewards"
	MethodNameUnsignedConfidantRewards = "UnsignedConfidantRewards"
	MethodNameConfidantRewards         = "ConfidantRewards"
	VariableNameRewards                = "rewardsInfo"
)
View Source
const (
	Confidant = iota
	Rewards
)

Variables

View Source
var (
	MinerABI, _ = abi.JSONToABIContract(strings.NewReader(jsonMiner))
)
View Source
var (
	MintageABI, _ = abi.JSONToABIContract(strings.NewReader(jsonMintage))
)
View Source
var (
	NEP5PledgeABI, _ = abi.JSONToABIContract(strings.NewReader(jsonNEP5Pledge))
)
View Source
var (
	RewardsABI, _ = abi.JSONToABIContract(strings.NewReader(jsonRewards))
)

Functions

func GetConfidantKey added in v1.2.0

func GetConfidantKey(address types.Address, txId, txHeader, rxHeader []byte) []byte

func GetConfidantRewords added in v1.2.0

func GetConfidantRewords(ctx *vmstore.VMContext, confidant types.Address) (map[string]*big.Int, error)

func GetConfidantRewordsDetail added in v1.2.0

func GetConfidantRewordsDetail(ctx *vmstore.VMContext, confidant types.Address) (map[string][]*RewardsInfo, error)

func GetMinerRewardKey added in v1.2.3

func GetMinerRewardKey(addr types.Address, height uint64) []byte

func GetPledgeBeneficialAmount added in v1.1.0

func GetPledgeBeneficialAmount(ctx *vmstore.VMContext, beneficial types.Address, pType uint8) *big.Int

func GetPledgeBeneficialTotalAmount added in v1.1.0

func GetPledgeBeneficialTotalAmount(ctx *vmstore.VMContext, beneficial types.Address) (*big.Int, error)

func GetPledgeKey

func GetPledgeKey(addr types.Address, beneficial types.Address, neoTxId string) []byte

func GetRewardsKey added in v1.2.0

func GetRewardsKey(txId, txHeader, rxHeader []byte) []byte

func GetTokenById added in v1.1.0

func GetTokenById(ctx *vmstore.VMContext, tokenId types.Hash) (*types.TokenInfo, error)

func GetTokenByName added in v1.1.0

func GetTokenByName(ctx *vmstore.VMContext, tokenName string) (*types.TokenInfo, error)

func GetTotalPledgeAmount added in v1.2.0

func GetTotalPledgeAmount(ctx *vmstore.VMContext) *big.Int

func GetTotalRewards added in v1.2.0

func GetTotalRewards(ctx *vmstore.VMContext, txId string) (*big.Int, error)

func ListTokens added in v1.1.0

func ListTokens(ctx *vmstore.VMContext) ([]*types.TokenInfo, error)

func MinerCalcRewardEndHeight added in v1.2.3

func MinerCalcRewardEndHeight(startHeight uint64, maxEndHeight uint64) uint64

func MinerPovHeightToCount added in v1.2.3

func MinerPovHeightToCount(height uint64) uint64

height begin from 0, so height + 1 == blocks count

func MinerPovHeightToDayIndex added in v1.2.3

func MinerPovHeightToDayIndex(height uint64) uint32

func MinerRoundPovHeight added in v1.2.3

func MinerRoundPovHeight(height uint64, round uint64) uint64

func NewTokenHash

func NewTokenHash(address types.Address, previous types.Hash, tokenName string) types.Hash

func ParseGenesisTokenInfo added in v1.1.0

func ParseGenesisTokenInfo(data []byte) (*types.TokenInfo, error)

func ParseTokenInfo

func ParseTokenInfo(data []byte) (*types.TokenInfo, error)

Types

type MinerRewardInfo added in v1.2.3

type MinerRewardInfo struct {
	Beneficial   types.Address `json:"beneficial"`
	StartHeight  uint64        `json:"startHeight"`
	EndHeight    uint64        `json:"endHeight"`
	RewardBlocks uint64        `json:"rewardBlocks"`
}

func CalcMaxMinerRewardInfo added in v1.2.3

func CalcMaxMinerRewardInfo(rewardInfos []*MinerRewardInfo) *MinerRewardInfo

func GetMinerRewardInfosByCoinbase added in v1.2.3

func GetMinerRewardInfosByCoinbase(ctx *vmstore.VMContext, coinbase types.Address) ([]*MinerRewardInfo, error)

type MinerRewardParam added in v1.2.3

type MinerRewardParam struct {
	Coinbase     types.Address `json:"coinbase"`
	Beneficial   types.Address `json:"beneficial"`
	StartHeight  uint64        `json:"startHeight"`
	EndHeight    uint64        `json:"endHeight"`
	RewardBlocks uint64        `json:"rewardBlocks"`
}

func (*MinerRewardParam) Verify added in v1.2.3

func (p *MinerRewardParam) Verify() (bool, error)

type NEP5PledgeInfo added in v1.1.0

type NEP5PledgeInfo struct {
	PType         uint8
	Amount        *big.Int
	WithdrawTime  int64
	Beneficial    types.Address
	PledgeAddress types.Address
	NEP5TxId      string
}

func GetBeneficialInfos added in v1.1.0

func GetBeneficialInfos(ctx *vmstore.VMContext, addr types.Address) ([]*NEP5PledgeInfo, *big.Int)

GetPledgeInfos get pledge info list by pledge address

func GetBeneficialPledgeInfos added in v1.1.0

func GetBeneficialPledgeInfos(ctx *vmstore.VMContext, beneficial types.Address, pType PledgeType) ([]*NEP5PledgeInfo, *big.Int)

GetBeneficialPledgeInfos get pledge info by beneficial address and pledge type

func GetPledgeInfos added in v1.1.0

func GetPledgeInfos(ctx *vmstore.VMContext, addr types.Address) ([]*NEP5PledgeInfo, *big.Int)

GetPledgeInfos get pledge info list by pledge address

func ParsePledgeInfo added in v1.1.0

func ParsePledgeInfo(data []byte) (*NEP5PledgeInfo, error)

ParsePledgeInfo convert data to NEP5PledgeInfo

func SearchAllPledgeInfos added in v1.1.0

func SearchAllPledgeInfos(ctx *vmstore.VMContext) ([]*NEP5PledgeInfo, error)

type ParamMintage

type ParamMintage struct {
	TokenId     types.Hash
	TokenName   string
	TokenSymbol string
	TotalSupply *big.Int
	Decimals    uint8
	Beneficial  types.Address
	NEP5TxId    string
}

type PledgeParam added in v1.1.0

type PledgeParam struct {
	Beneficial    types.Address
	PledgeAddress types.Address
	PType         uint8
	NEP5TxId      string
}

func ParsePledgeParam added in v1.1.0

func ParsePledgeParam(data []byte) (*PledgeParam, error)

ParsePledgeParam convert data to PledgeParam

type PledgeResult added in v1.1.0

type PledgeResult struct {
	Key        []byte
	PledgeInfo *NEP5PledgeInfo
}

func SearchBeneficialPledgeInfo added in v1.1.0

func SearchBeneficialPledgeInfo(ctx *vmstore.VMContext, param *WithdrawPledgeParam) []*PledgeResult

func SearchBeneficialPledgeInfoByTxId added in v1.1.1

func SearchBeneficialPledgeInfoByTxId(ctx *vmstore.VMContext, param *WithdrawPledgeParam) *PledgeResult

func SearchBeneficialPledgeInfoIgnoreWithdrawTime added in v1.1.0

func SearchBeneficialPledgeInfoIgnoreWithdrawTime(ctx *vmstore.VMContext, param *WithdrawPledgeParam) []*PledgeResult

func SearchPledgeInfoWithNEP5TxId added in v1.1.2

func SearchPledgeInfoWithNEP5TxId(ctx *vmstore.VMContext, param *WithdrawPledgeParam) *PledgeResult

type PledgeType added in v1.1.0

type PledgeType uint8
const (
	Network PledgeType = iota
	Vote
	Storage
	Oracle
)

func (PledgeType) String added in v1.1.0

func (i PledgeType) String() string

type RewardsInfo added in v1.2.0

type RewardsInfo struct {
	Type     uint8         `json:"type"`
	From     types.Address `json:"from"`
	To       types.Address `json:"to"`
	TxHeader types.Hash    `json:"txHeader"`
	RxHeader types.Hash    `json:"rxHeader"`
	Amount   *big.Int      `json:"amount"`
}

func GetRewardsDetail added in v1.2.0

func GetRewardsDetail(ctx *vmstore.VMContext, txId string) ([]*RewardsInfo, error)

func ParseRewardsInfo added in v1.2.0

func ParseRewardsInfo(data []byte) (*RewardsInfo, error)

type RewardsParam added in v1.2.0

type RewardsParam struct {
	Id         types.Hash      `json:"id"`
	Beneficial types.Address   `json:"beneficial"`
	TxHeader   types.Hash      `json:"txHeader"`
	RxHeader   types.Hash      `json:"rxHeader"`
	Amount     *big.Int        `json:"amount"`
	Sign       types.Signature `json:"signature"`
}

func (*RewardsParam) Verify added in v1.2.0

func (ap *RewardsParam) Verify(address types.Address, methodName string) (bool, error)

type VariablePledgeBeneficial

type VariablePledgeBeneficial struct {
	Amount *big.Int
	PType  PledgeType
}

type WithdrawPledgeParam added in v1.0.3

type WithdrawPledgeParam struct {
	Beneficial types.Address `json:"beneficial"`
	Amount     *big.Int      `json:"amount"`
	PType      uint8         `json:"pType"`
	NEP5TxId   string        `json:"nep5TxId"`
}

Jump to

Keyboard shortcuts

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