common

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Feb 15, 2021 License: GPL-3.0 Imports: 8 Imported by: 1

Documentation

Index

Constants

View Source
const OwnerKey = "contractOwner"

Variables

This section is empty.

Functions

func BytesEqual

func BytesEqual(a []byte, b []byte) bool

BytesEqual compares two slice of bytes by wrapping them into strings, which is necessary with new util.Equal interop behaviour, see neo-go#1176.

func GetList

func GetList(ctx storage.Context, key interface{}) [][]byte

func HasUpdateAccess

func HasUpdateAccess(ctx storage.Context) bool

HasUpdateAccess returns true if contract can be initialized, re-initialized or migrated.

func InitVote

func InitVote(ctx storage.Context)

func InnerRingInvoker

func InnerRingInvoker(ir []IRNode) []byte

InnerRingInvoker returns public key of inner ring node that invoked contract.

func InvokeID

func InvokeID(args []interface{}, prefix []byte) []byte

func RemoveVotes

func RemoveVotes(ctx storage.Context, id []byte)

RemoveVotes clears ballots of the decision that has been accepted by inner ring nodes.

func SetSerialized

func SetSerialized(ctx storage.Context, key interface{}, value interface{})

SetSerialized serializes data and puts it into contract storage.

func Vote

func Vote(ctx storage.Context, id, from []byte) int

Vote adds ballot for the decision with specific 'id' and returns amount on unique voters for that decision.

Types

type Ballot

type Ballot struct {
	// ID of the voting decision.
	ID []byte

	// Public keys of already voted inner ring nodes.
	Voters [][]byte

	// Height of block with the last vote.
	Height int
}

type IRNode

type IRNode struct {
	PublicKey []byte
}

func InnerRingList

func InnerRingList(sc interop.Hash160) []IRNode

InnerRingList gets list of inner ring through calling "innerRingList" method of smart contract.

func InnerRingListViaStorage

func InnerRingListViaStorage(ctx storage.Context, key interface{}) []IRNode

InnerRingList returns list of inner ring nodes through calling "innerRingList" method of smart contract.

Address of smart contract is received from storage by key.

Jump to

Keyboard shortcuts

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