type ForcedExitBuilder

type ForcedExitBuilder struct {
    ToChainId             ChainId
    InitiatorAccountId    AccountId
    InitiatorSubAccountId SubAccountId
    Target                ZkLinkAddress
    TargetSubAccountId    SubAccountId
    L2SourceToken         TokenId
    L1TargetToken         TokenId
    InitiatorNonce        Nonce
    ExitAmount            BigUint
    WithdrawToL1          bool
    Timestamp             TimeStamp

Builder used to create ForcedExit transaction.

type ForcedExit

ForcedExit transaction type, it's a opaque data type.

func NewForcedExit

func NewForcedExit(builder ForcedExitBuilder) *ForcedExit

Create a new ForcedExit transaction.

func (*ForcedExit) GetBytes

func (_self *ForcedExit) GetBytes() []uint8

Get the encoded bytes used to create the L3 signature.

func (*ForcedExit) TxHash

func (*ForcedExit) TxHash() []uint8

Get the transaction hash of ForcedExit transaction.

func (*ForcedExit) JsonStr

func (*ForcedExit) JsonStr() string

Get the json string of the ForcedExit transaction.

func (*ForcedExit) IsValid

func (_self *ForcedExit) IsValid() bool

Check if all the fields in Withdraw are valid. For example, if the ChainId is exceeded the maximum ChainId, it will return false.

func (*ForcedExit) CreateSignedTx

func (*ForcedExit) CreateSignedTx(signer *ZkLinkSigner) (*ForcedExit, error)

Sign the Transfer transaction with the ZkLinkSigner, L1 signature and L3 signature will be created.

func (*ForcedExit) GetSignature

func (*ForcedExit) GetSignature() ZkLinkSignature

Get the signature in the Transfer transaction.

func (*ForcedExit) IsSignatureValid

func (*ForcedExit) IsSignatureValid() bool

Check if the L3 signature in the Transfer transaction is valid or not.

func (*ForcedExit) SubmitterSignature

func (*ForcedExit) SubmitterSignature(signer *ZkLinkSigner) (ZkLinkSignature, error)

Create the submitter signature.


func (*ForcedExit) ToZklinkTx

func (*ForcedExit) ToZklinkTx() ZkLinkTx

Change the transaction to the ZkLinkTx

Last updated