universal

package
v0.0.0-...-3442dc8 Latest Latest
Warning

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

Go to latest
Published: Mar 9, 2023 License: GPL-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TRANSFER_TargetItemMaxSize = 50
)

Variables

View Source
var (
	ErrInvalidLengthUniversal        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowUniversal          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupUniversal = fmt.Errorf("proto: unexpected end of group")
)
View Source
var TransactionResultUniversal_ResultStatus_name = map[int32]string{
	0: "OK",
	1: "Err",
}
View Source
var TransactionResultUniversal_ResultStatus_value = map[string]int32{
	"OK":  0,
	"Err": 1,
}

Functions

func ConstructTransactionWithUniversalTransfer

func ConstructTransactionWithUniversalTransfer(
	log tplog.Logger,
	cryptService tpcrt.CryptService,
	fromPriKey tpcrtypes.PrivateKey,
	feePayerPriKey tpcrtypes.PrivateKey,
	nonce uint64,
	gasPrice uint64,
	gasLimit uint64,
	targetAddr tpcrtypes.Address,
	targets []TargetItem) *txbasic.Transaction

Types

type GasEstimator

type GasEstimator interface {
	Estimate(ctx context.Context, log tplog.Logger, nodeID string, txServant txbasic.TransactionServant, txUni *TransactionUniversalWithHead) (*big.Int, error)
}

func NewGasEstimator

func NewGasEstimator() GasEstimator

type GasPriceComputer

type GasPriceComputer interface {
	ComputeGasPrice() (uint64, error)
}

func NewGasPriceComputer

func NewGasPriceComputer(marshaler codec.Marshaler,
	txPoolSize func() int64,
	latestBlock func() (*tpchaintypes.Block, error),
	gasConfig *tpconfig.GasConfiguration,
	chainConfig *tpconfig.ChainConfiguration) GasPriceComputer

type TargetItem

type TargetItem struct {
	Symbol currency.TokenSymbol
	Value  *big.Int
}

type TransactionResultUniversal

type TransactionResultUniversal struct {
	Version              uint32                                  `protobuf:"varint,1,opt,name=Version,proto3" json:"version"`
	TxHash               []byte                                  `protobuf:"bytes,2,opt,name=TxHash,proto3" json:"txHash"`
	GasUsed              uint64                                  `protobuf:"varint,3,opt,name=GasUsed,proto3" json:"gasUsed"`
	ErrString            []byte                                  `protobuf:"bytes,4,opt,name=ErrString,proto3" json:"errString"`
	Status               TransactionResultUniversal_ResultStatus `protobuf:"varint,5,opt,name=Status,proto3,enum=proto.TransactionResultUniversal_ResultStatus" json:"status"`
	Data                 []byte                                  `protobuf:"bytes,6,opt,name=Data,proto3" json:"data"`
	XXX_NoUnkeyedLiteral struct{}                                `json:"-"`
	XXX_unrecognized     []byte                                  `json:"-"`
	XXX_sizecache        int32                                   `json:"-"`
}

func (*TransactionResultUniversal) Descriptor

func (*TransactionResultUniversal) Descriptor() ([]byte, []int)

func (*TransactionResultUniversal) GetData

func (m *TransactionResultUniversal) GetData() []byte

func (*TransactionResultUniversal) GetErrString

func (m *TransactionResultUniversal) GetErrString() []byte

func (*TransactionResultUniversal) GetGasUsed

func (m *TransactionResultUniversal) GetGasUsed() uint64

func (*TransactionResultUniversal) GetStatus

func (*TransactionResultUniversal) GetTxHash

func (m *TransactionResultUniversal) GetTxHash() []byte

func (*TransactionResultUniversal) GetVersion

func (m *TransactionResultUniversal) GetVersion() uint32

func (*TransactionResultUniversal) Marshal

func (m *TransactionResultUniversal) Marshal() (dAtA []byte, err error)

func (*TransactionResultUniversal) MarshalTo

func (m *TransactionResultUniversal) MarshalTo(dAtA []byte) (int, error)

func (*TransactionResultUniversal) MarshalToSizedBuffer

func (m *TransactionResultUniversal) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*TransactionResultUniversal) ProtoMessage

func (*TransactionResultUniversal) ProtoMessage()

func (*TransactionResultUniversal) Reset

func (m *TransactionResultUniversal) Reset()

func (*TransactionResultUniversal) Size

func (m *TransactionResultUniversal) Size() (n int)

func (*TransactionResultUniversal) String

func (m *TransactionResultUniversal) String() string

func (*TransactionResultUniversal) Unmarshal

func (m *TransactionResultUniversal) Unmarshal(dAtA []byte) error

func (*TransactionResultUniversal) XXX_DiscardUnknown

func (m *TransactionResultUniversal) XXX_DiscardUnknown()

func (*TransactionResultUniversal) XXX_Marshal

func (m *TransactionResultUniversal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*TransactionResultUniversal) XXX_Merge

func (m *TransactionResultUniversal) XXX_Merge(src proto.Message)

func (*TransactionResultUniversal) XXX_Size

func (m *TransactionResultUniversal) XXX_Size() int

func (*TransactionResultUniversal) XXX_Unmarshal

func (m *TransactionResultUniversal) XXX_Unmarshal(b []byte) error

type TransactionResultUniversal_ResultStatus

type TransactionResultUniversal_ResultStatus int32
const (
	TransactionResultUniversal_OK  TransactionResultUniversal_ResultStatus = 0
	TransactionResultUniversal_Err TransactionResultUniversal_ResultStatus = 1
)

func (TransactionResultUniversal_ResultStatus) EnumDescriptor

func (TransactionResultUniversal_ResultStatus) EnumDescriptor() ([]byte, []int)

func (TransactionResultUniversal_ResultStatus) String

type TransactionUniversaSimulate

type TransactionUniversaSimulate struct {
	// contains filtered or unexported fields
}

func (*TransactionUniversaSimulate) Execute

func (sim *TransactionUniversaSimulate) Execute() (uint64, error)

type TransactionUniversal

type TransactionUniversal struct {
	Head                 *TransactionUniversalHead `protobuf:"bytes,1,opt,name=Head,proto3" json:"head"`
	Data                 *TransactionUniversalData `protobuf:"bytes,2,opt,name=Data,proto3" json:"data"`
	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
	XXX_unrecognized     []byte                    `json:"-"`
	XXX_sizecache        int32                     `json:"-"`
}

func (*TransactionUniversal) Descriptor

func (*TransactionUniversal) Descriptor() ([]byte, []int)

func (*TransactionUniversal) GetData

func (*TransactionUniversal) GetHead

func (*TransactionUniversal) GetSpecificTransactionAction

func (m *TransactionUniversal) GetSpecificTransactionAction(txHead *txbasic.TransactionHead) txaction.TransactionAction

func (*TransactionUniversal) Marshal

func (m *TransactionUniversal) Marshal() (dAtA []byte, err error)

func (*TransactionUniversal) MarshalTo

func (m *TransactionUniversal) MarshalTo(dAtA []byte) (int, error)

func (*TransactionUniversal) MarshalToSizedBuffer

func (m *TransactionUniversal) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*TransactionUniversal) ProtoMessage

func (*TransactionUniversal) ProtoMessage()

func (*TransactionUniversal) Reset

func (m *TransactionUniversal) Reset()

func (*TransactionUniversal) Size

func (m *TransactionUniversal) Size() (n int)

func (*TransactionUniversal) String

func (m *TransactionUniversal) String() string

func (*TransactionUniversal) Unmarshal

func (m *TransactionUniversal) Unmarshal(dAtA []byte) error

func (*TransactionUniversal) XXX_DiscardUnknown

func (m *TransactionUniversal) XXX_DiscardUnknown()

func (*TransactionUniversal) XXX_Marshal

func (m *TransactionUniversal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*TransactionUniversal) XXX_Merge

func (m *TransactionUniversal) XXX_Merge(src proto.Message)

func (*TransactionUniversal) XXX_Size

func (m *TransactionUniversal) XXX_Size() int

func (*TransactionUniversal) XXX_Unmarshal

func (m *TransactionUniversal) XXX_Unmarshal(b []byte) error

type TransactionUniversalData

type TransactionUniversalData struct {
	Specification        []byte   `protobuf:"bytes,1,opt,name=Specification,proto3" json:"specification"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*TransactionUniversalData) Descriptor

func (*TransactionUniversalData) Descriptor() ([]byte, []int)

func (*TransactionUniversalData) GetSpecification

func (m *TransactionUniversalData) GetSpecification() []byte

func (*TransactionUniversalData) Marshal

func (m *TransactionUniversalData) Marshal() (dAtA []byte, err error)

func (*TransactionUniversalData) MarshalTo

func (m *TransactionUniversalData) MarshalTo(dAtA []byte) (int, error)

func (*TransactionUniversalData) MarshalToSizedBuffer

func (m *TransactionUniversalData) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*TransactionUniversalData) ProtoMessage

func (*TransactionUniversalData) ProtoMessage()

func (*TransactionUniversalData) Reset

func (m *TransactionUniversalData) Reset()

func (*TransactionUniversalData) Size

func (m *TransactionUniversalData) Size() (n int)

func (*TransactionUniversalData) String

func (m *TransactionUniversalData) String() string

func (*TransactionUniversalData) Unmarshal

func (m *TransactionUniversalData) Unmarshal(dAtA []byte) error

func (*TransactionUniversalData) XXX_DiscardUnknown

func (m *TransactionUniversalData) XXX_DiscardUnknown()

func (*TransactionUniversalData) XXX_Marshal

func (m *TransactionUniversalData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*TransactionUniversalData) XXX_Merge

func (m *TransactionUniversalData) XXX_Merge(src proto.Message)

func (*TransactionUniversalData) XXX_Size

func (m *TransactionUniversalData) XXX_Size() int

func (*TransactionUniversalData) XXX_Unmarshal

func (m *TransactionUniversalData) XXX_Unmarshal(b []byte) error

type TransactionUniversalDeploy

type TransactionUniversalDeploy struct {
	txbasic.TransactionHead
	TransactionUniversalHead
	ContractAddress tpcrtypes.Address
	Code            []byte
}

func NewTransactionUniversalDeploy

func NewTransactionUniversalDeploy(txHead *txbasic.TransactionHead, txUniHead *TransactionUniversalHead, contractAddress tpcrtypes.Address, code []byte) *TransactionUniversalDeploy

func (*TransactionUniversalDeploy) DataBytes

func (txdp *TransactionUniversalDeploy) DataBytes() ([]byte, error)

func (*TransactionUniversalDeploy) Estimate

func (txdp *TransactionUniversalDeploy) Estimate(ctx context.Context, log tplog.Logger, nodeID string, txServant txbasic.TransactionServant) (*big.Int, error)

func (*TransactionUniversalDeploy) Execute

func (*TransactionUniversalDeploy) HashBytes

func (txdp *TransactionUniversalDeploy) HashBytes() ([]byte, error)

func (*TransactionUniversalDeploy) Verify

type TransactionUniversalDeployVerifier

type TransactionUniversalDeployVerifier func(ctx context.Context, log tplog.Logger, txDP *TransactionUniversalDeploy, txUniServant TransactionUniversalServant) txbasic.VerifyResult

func TransactionUniversalDeployCodeVerifier

func TransactionUniversalDeployCodeVerifier() TransactionUniversalDeployVerifier

func TransactionUniversalDeployContractAddressVerifier

func TransactionUniversalDeployContractAddressVerifier() TransactionUniversalDeployVerifier

type TransactionUniversalHead

type TransactionUniversalHead struct {
	Version              uint32   `protobuf:"varint,1,opt,name=Version,proto3" json:"version"`
	FeePayer             []byte   `protobuf:"bytes,2,opt,name=FeePayer,proto3" json:"feePayer,omitempty"`
	GasPrice             uint64   `protobuf:"varint,3,opt,name=GasPrice,proto3" json:"gasPrice,omitempty"`
	GasLimit             uint64   `protobuf:"varint,4,opt,name=GasLimit,proto3" json:"gasLimit,omitempty"`
	Type                 uint32   `protobuf:"varint,5,opt,name=Type,proto3" json:"type"`
	FeePayerSignature    []byte   `protobuf:"bytes,6,opt,name=FeePayerSignature,proto3" json:"feePayerSignature,omitempty"`
	Options              uint32   `protobuf:"varint,7,opt,name=Options,proto3" json:"options,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*TransactionUniversalHead) Descriptor

func (*TransactionUniversalHead) Descriptor() ([]byte, []int)

func (*TransactionUniversalHead) GetFeePayer

func (m *TransactionUniversalHead) GetFeePayer() []byte

func (*TransactionUniversalHead) GetFeePayerSignature

func (m *TransactionUniversalHead) GetFeePayerSignature() []byte

func (*TransactionUniversalHead) GetGasLimit

func (m *TransactionUniversalHead) GetGasLimit() uint64

func (*TransactionUniversalHead) GetGasPrice

func (m *TransactionUniversalHead) GetGasPrice() uint64

func (*TransactionUniversalHead) GetOptions

func (m *TransactionUniversalHead) GetOptions() uint32

func (*TransactionUniversalHead) GetType

func (m *TransactionUniversalHead) GetType() uint32

func (*TransactionUniversalHead) GetVersion

func (m *TransactionUniversalHead) GetVersion() uint32

func (*TransactionUniversalHead) Marshal

func (m *TransactionUniversalHead) Marshal() (dAtA []byte, err error)

func (*TransactionUniversalHead) MarshalTo

func (m *TransactionUniversalHead) MarshalTo(dAtA []byte) (int, error)

func (*TransactionUniversalHead) MarshalToSizedBuffer

func (m *TransactionUniversalHead) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*TransactionUniversalHead) ProtoMessage

func (*TransactionUniversalHead) ProtoMessage()

func (*TransactionUniversalHead) Reset

func (m *TransactionUniversalHead) Reset()

func (*TransactionUniversalHead) Size

func (m *TransactionUniversalHead) Size() (n int)

func (*TransactionUniversalHead) String

func (m *TransactionUniversalHead) String() string

func (*TransactionUniversalHead) Unmarshal

func (m *TransactionUniversalHead) Unmarshal(dAtA []byte) error

func (*TransactionUniversalHead) XXX_DiscardUnknown

func (m *TransactionUniversalHead) XXX_DiscardUnknown()

func (*TransactionUniversalHead) XXX_Marshal

func (m *TransactionUniversalHead) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*TransactionUniversalHead) XXX_Merge

func (m *TransactionUniversalHead) XXX_Merge(src proto.Message)

func (*TransactionUniversalHead) XXX_Size

func (m *TransactionUniversalHead) XXX_Size() int

func (*TransactionUniversalHead) XXX_Unmarshal

func (m *TransactionUniversalHead) XXX_Unmarshal(b []byte) error

type TransactionUniversalInvoke

type TransactionUniversalInvoke struct {
	txbasic.TransactionHead
	TransactionUniversalHead
	ContractAddr tpcrtypes.Address
	Method       string
	Args         string
}

func NewTransactionUniversalInvoke

func NewTransactionUniversalInvoke(txHead *txbasic.TransactionHead, txUniHead *TransactionUniversalHead, contractAddr tpcrtypes.Address, method string, args string) *TransactionUniversalInvoke

func (*TransactionUniversalInvoke) DataBytes

func (txiv *TransactionUniversalInvoke) DataBytes() ([]byte, error)

func (*TransactionUniversalInvoke) Estimate

func (txiv *TransactionUniversalInvoke) Estimate(ctx context.Context, log tplog.Logger, nodeID string, txServant txbasic.TransactionServant) (*big.Int, error)

func (*TransactionUniversalInvoke) Execute

func (*TransactionUniversalInvoke) HashBytes

func (txiv *TransactionUniversalInvoke) HashBytes() ([]byte, error)

func (*TransactionUniversalInvoke) Verify

type TransactionUniversalInvokeVerifier

type TransactionUniversalInvokeVerifier func(ctx context.Context, log tplog.Logger, txIV *TransactionUniversalInvoke, txUniServant TransactionUniversalServant) txbasic.VerifyResult

func TransactionUniversalInvokeArgsVerifier

func TransactionUniversalInvokeArgsVerifier() TransactionUniversalInvokeVerifier

func TransactionUniversalInvokeContractAddressVerifier

func TransactionUniversalInvokeContractAddressVerifier() TransactionUniversalInvokeVerifier

func TransactionUniversalInvokeMethodVerifier

func TransactionUniversalInvokeMethodVerifier() TransactionUniversalInvokeVerifier

type TransactionUniversalServant

type TransactionUniversalServant interface {
	txbasic.TransactionServant
	GetGasEstimator() (GasEstimator, error)
}

func NewTransactionUniversalServant

func NewTransactionUniversalServant(txServant txbasic.TransactionServant) TransactionUniversalServant

type TransactionUniversalTransfer

type TransactionUniversalTransfer struct {
	txbasic.TransactionHead
	TransactionUniversalHead
	TargetAddr tpcrtypes.Address
	Targets    []TargetItem
}

func NewTransactionUniversalTransfer

func NewTransactionUniversalTransfer(txHead *txbasic.TransactionHead, txUniHead *TransactionUniversalHead, targetAddr tpcrtypes.Address, targets []TargetItem) *TransactionUniversalTransfer

func (*TransactionUniversalTransfer) DataBytes

func (txfer *TransactionUniversalTransfer) DataBytes() ([]byte, error)

func (*TransactionUniversalTransfer) Estimate

func (txfer *TransactionUniversalTransfer) Estimate(ctx context.Context, log tplog.Logger, nodeID string, txServant txbasic.TransactionServant) (*big.Int, error)

func (*TransactionUniversalTransfer) Execute

func (*TransactionUniversalTransfer) HashBytes

func (txfer *TransactionUniversalTransfer) HashBytes() ([]byte, error)

func (*TransactionUniversalTransfer) Verify

type TransactionUniversalTransferVerifier

type TransactionUniversalTransferVerifier func(ctx context.Context, log tplog.Logger, txTr *TransactionUniversalTransfer, txUniServant TransactionUniversalServant) txbasic.VerifyResult

func TransactionUniversalTransferTargetAddressVerifier

func TransactionUniversalTransferTargetAddressVerifier() TransactionUniversalTransferVerifier

func TransactionUniversalTransferTargetItemsVerifier

func TransactionUniversalTransferTargetItemsVerifier() TransactionUniversalTransferVerifier

type TransactionUniversalType

type TransactionUniversalType uint32
const (
	TransactionUniversalType_Unknown TransactionUniversalType = iota
	TransactionUniversalType_Transfer
	TransactionUniversalType_ContractDeploy
	TransactionUniversalType_ContractInvoke
	TransactionUniversalType_NativeInvoke
	TransactionUniversalType_Relay
	TransactionUniversalType_DataTransfer
)

func (TransactionUniversalType) String

func (tr TransactionUniversalType) String() string

func (TransactionUniversalType) Value

type TransactionUniversalVerifier

type TransactionUniversalVerifier func(ctx context.Context, log tplog.Logger, nodeID string, txUni *TransactionUniversalWithHead, txUniServant TransactionUniversalServant) txbasic.VerifyResult

func TransactionUniversalGasVerifier

func TransactionUniversalGasVerifier() TransactionUniversalVerifier

func TransactionUniversalNonceVerifier

func TransactionUniversalNonceVerifier() TransactionUniversalVerifier

func TransactionUniversalPayerAddressVerifier

func TransactionUniversalPayerAddressVerifier() TransactionUniversalVerifier

func TransactionUniversalPayerSignatureVerifier

func TransactionUniversalPayerSignatureVerifier() TransactionUniversalVerifier

type TransactionUniversalVersion

type TransactionUniversalVersion uint32
const (
	TransactionUniversalVersion_v1 TransactionUniversalVersion = 1
)

type TransactionUniversalWithHead

type TransactionUniversalWithHead struct {
	txbasic.TransactionHead
	TransactionUniversal
}

func ContructTransactionUniversalWithHead

func ContructTransactionUniversalWithHead(txHead *txbasic.TransactionHead, txUniHead *TransactionUniversalHead, txUnidata []byte) *TransactionUniversalWithHead

func (*TransactionUniversalWithHead) DataLen

func (txuni *TransactionUniversalWithHead) DataLen() uint64

func (*TransactionUniversalWithHead) Estimate

func (txuni *TransactionUniversalWithHead) Estimate(ctx context.Context, log tplog.Logger, nodeID string, txServant txbasic.TransactionServant) (*big.Int, error)

func (*TransactionUniversalWithHead) TxUniVerify

Jump to

Keyboard shortcuts

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