common

package
v0.9.4 Latest Latest
Warning

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

Go to latest
Published: Jun 29, 2018 License: LGPL-3.0 Imports: 18 Imported by: 0

Documentation

Overview

* Copyright (C) 2018 The ontology Authors * This file is part of The ontology library. * * The ontology is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * The ontology is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with The ontology. If not, see <http://www.gnu.org/licenses/>.

Index

Constants

View Source
const MAX_SEARCH_HEIGHT uint32 = 100

Variables

This section is empty.

Functions

func BuildNativeInvokeCode

func BuildNativeInvokeCode(contractAddress common.Address, version byte, method string, params []interface{}) ([]byte, error)

func BuildNeoVMInvokeCode

func BuildNeoVMInvokeCode(smartContractAddress common.Address, params []interface{}) ([]byte, error)

BuildNeoVMInvokeCode build NeoVM Invoke code for params

func BuildNeoVMParam

func BuildNeoVMParam(builder *neovm.ParamsBuilder, smartContractParams []interface{}) error

buildNeoVMParamInter build neovm invoke param code

func GetAllowance

func GetAllowance(asset string, from, to common.Address) (string, error)

func GetBlockTransactions

func GetBlockTransactions(block *types.Block) interface{}

func GetContractAllowance

func GetContractAllowance(cVersion byte, contractAddr, fromAddr, toAddr common.Address) (uint64, error)

func GetContractBalance

func GetContractBalance(cVersion byte, contractAddr, accAddr common.Address) (uint64, error)

func GetGasPrice

func GetGasPrice() (map[string]interface{}, error)

func NewNativeInvokeTransaction

func NewNativeInvokeTransaction(gasPirce, gasLimit uint64, contractAddress common.Address, verison byte, method string, params []interface{}) (*types.Transaction, error)

NewNativeInvokeTransaction return native contract invoke transaction

func NewNeovmInvokeTransaction

func NewNeovmInvokeTransaction(gasPrice, gasLimit uint64, contractAddress common.Address, params []interface{}) (*types.Transaction, error)

func NewSmartContractTransaction

func NewSmartContractTransaction(gasPrice, gasLimit uint64, invokeCode []byte) (*types.Transaction, error)

func VerifyAndSendTx

func VerifyAndSendTx(txn *types.Transaction) ontErrors.ErrCode

Types

type AmountMap

type AmountMap struct {
	Key   common.Uint256
	Value common.Fixed64
}

type BalanceOfRsp

type BalanceOfRsp struct {
	Ont string `json:"ont"`
	Ong string `json:"ong"`
}

func GetBalance

func GetBalance(address common.Address) (*BalanceOfRsp, error)

type BlockHead

type BlockHead struct {
	Version          uint32
	PrevBlockHash    string
	TransactionsRoot string
	BlockRoot        string
	Timestamp        uint32
	Height           uint32
	ConsensusData    uint64
	ConsensusPayload string
	NextBookkeeper   string

	Bookkeepers []string
	SigData     []string

	Hash string
}

type BlockInfo

type BlockInfo struct {
	Hash         string
	Size         int
	Header       *BlockHead
	Transactions []*Transactions
}

func GetBlockInfo

func GetBlockInfo(block *types.Block) BlockInfo

type BookKeepingInfo

type BookKeepingInfo struct {
	Nonce uint64
}

implement PayloadInfo define BookKeepingInfo

type BookkeeperInfo

type BookkeeperInfo struct {
	PubKey     string
	Action     string
	Issuer     string
	Controller string
}

type ConsensusInfo

type ConsensusInfo struct {
}

type DataFileInfo

type DataFileInfo struct {
	IPFSPath string
	Filename string
	Note     string
	Issuer   string
}

type DeployCodeInfo

type DeployCodeInfo struct {
	Code        string
	NeedStorage bool
	Name        string
	CodeVersion string
	Author      string
	Email       string
	Description string
}

type ExecuteNotify

type ExecuteNotify struct {
	TxHash      string
	State       byte
	GasConsumed uint64
	Notify      []NotifyEventInfo
}

func GetExecuteNotify

func GetExecuteNotify(obj *event.ExecuteNotify) (map[string]bool, ExecuteNotify)

type Fee

type Fee struct {
	Amount common.Fixed64
	Payer  string
}

type InvokeCodeInfo

type InvokeCodeInfo struct {
	Code     string
	GasLimit uint64
}

type LogEventArgs

type LogEventArgs struct {
	TxHash          string
	ContractAddress string
	Message         string
}

func GetLogEvent

func GetLogEvent(obj *event.LogEventArgs) (map[string]bool, LogEventArgs)

type MerkleProof

type MerkleProof struct {
	Type             string
	TransactionsRoot string
	BlockHeight      uint32
	CurBlockRoot     string
	CurBlockHeight   uint32
	TargetHashes     []string
}

type NodeInfo

type NodeInfo struct {
	NodeState   uint   // node status
	NodePort    uint16 // The nodes's port
	ID          uint64 // The nodes's id
	NodeTime    int64
	NodeVersion uint32   // The network protocol the node used
	NodeType    uint64   // The services the node supplied
	Relay       bool     // The relay capability of the node (merge into capbility flag)
	Height      uint32   // The node latest block height
	TxnCnt      []uint32 // The transactions in pool

}

type NotifyEventInfo

type NotifyEventInfo struct {
	ContractAddress string
	States          interface{}
}

type PayloadInfo

type PayloadInfo interface{}

func TransPayloadToHex

func TransPayloadToHex(p types.Payload) PayloadInfo

type PrivacyPayloadInfo

type PrivacyPayloadInfo struct {
	PayloadType uint8
	Payload     string
	EncryptType uint8
	EncryptAttr string
}

type RecordInfo

type RecordInfo struct {
	RecordType string
	RecordData string
}

type Sig

type Sig struct {
	PubKeys []string
	M       uint16
	SigData []string
}

type TXNAttrInfo

type TXNAttrInfo struct {
	Height  uint32
	Type    int
	ErrCode int
}

type TXNEntryInfo

type TXNEntryInfo struct {
	State []TXNAttrInfo // the result from each validator
}

type Transactions

type Transactions struct {
	Version    byte
	Nonce      uint32
	GasPrice   uint64
	GasLimit   uint64
	Payer      string
	TxType     types.TransactionType
	Payload    PayloadInfo
	Attributes []TxAttributeInfo
	Sigs       []Sig
	Hash       string
}

func TransArryByteToHexString

func TransArryByteToHexString(ptx *types.Transaction) *Transactions

type TxAttributeInfo

type TxAttributeInfo struct {
	Usage types.TransactionAttributeUsage
	Data  string
}

type VoteInfo

type VoteInfo struct {
	PubKeys []string
	Voter   string
}

Jump to

Keyboard shortcuts

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