github.com/MetalBlockchain/metalgo@v1.11.9/vms/platformvm/txs/visitor.go (about)

     1  // Copyright (C) 2019-2024, Ava Labs, Inc. All rights reserved.
     2  // See the file LICENSE for licensing terms.
     3  
     4  package txs
     5  
     6  // Allow vm to execute custom logic against the underlying transaction types.
     7  type Visitor interface {
     8  	AddValidatorTx(*AddValidatorTx) error
     9  	AddSubnetValidatorTx(*AddSubnetValidatorTx) error
    10  	AddDelegatorTx(*AddDelegatorTx) error
    11  	CreateChainTx(*CreateChainTx) error
    12  	CreateSubnetTx(*CreateSubnetTx) error
    13  	ImportTx(*ImportTx) error
    14  	ExportTx(*ExportTx) error
    15  	AdvanceTimeTx(*AdvanceTimeTx) error
    16  	RewardValidatorTx(*RewardValidatorTx) error
    17  	RemoveSubnetValidatorTx(*RemoveSubnetValidatorTx) error
    18  	TransformSubnetTx(*TransformSubnetTx) error
    19  	AddPermissionlessValidatorTx(*AddPermissionlessValidatorTx) error
    20  	AddPermissionlessDelegatorTx(*AddPermissionlessDelegatorTx) error
    21  	TransferSubnetOwnershipTx(*TransferSubnetOwnershipTx) error
    22  	BaseTx(*BaseTx) error
    23  }