mirror of
https://github.com/luxfi/node.git
synced 2026-07-27 03:39:39 +00:00
Create and Convert are orthogonal arrows: CreateNetworkTx = ∅→Network (birth, sovereign-or-inherited); ConvertNetworkTx = Network→Network (promote an existing network: inherited→sovereign, re-anchor parent — L2→L1, L3→L1, with owner auth). Only CreateSovereignL1 stays folded (it was birth+sovereign, not a distinct op). Both reuse the NetworkValidator component. Round-trip green incl L2→L1 promote.
32 lines
1.1 KiB
Go
32 lines
1.1 KiB
Go
// Copyright (C) 2019-2025, Lux Industries Inc. All rights reserved.
|
|
// See the file LICENSE for licensing terms.
|
|
|
|
package txs
|
|
|
|
// Allow vm to execute custom logic against the underlying transaction types.
|
|
type Visitor interface {
|
|
AddValidatorTx(*AddValidatorTx) error
|
|
AddChainValidatorTx(*AddChainValidatorTx) error
|
|
AddDelegatorTx(*AddDelegatorTx) error
|
|
CreateNetworkTx(*CreateNetworkTx) error
|
|
ConvertNetworkTx(*ConvertNetworkTx) error
|
|
CreateChainTx(*CreateChainTx) error
|
|
ImportTx(*ImportTx) error
|
|
ExportTx(*ExportTx) error
|
|
AdvanceTimeTx(*AdvanceTimeTx) error
|
|
RewardValidatorTx(*RewardValidatorTx) error
|
|
|
|
RemoveChainValidatorTx(*RemoveChainValidatorTx) error
|
|
TransformChainTx(*TransformChainTx) error
|
|
AddPermissionlessValidatorTx(*AddPermissionlessValidatorTx) error
|
|
AddPermissionlessDelegatorTx(*AddPermissionlessDelegatorTx) error
|
|
|
|
TransferChainOwnershipTx(*TransferChainOwnershipTx) error
|
|
BaseTx(*BaseTx) error
|
|
|
|
RegisterL1ValidatorTx(*RegisterL1ValidatorTx) error
|
|
SetL1ValidatorWeightTx(*SetL1ValidatorWeightTx) error
|
|
IncreaseL1ValidatorBalanceTx(*IncreaseL1ValidatorBalanceTx) error
|
|
DisableL1ValidatorTx(*DisableL1ValidatorTx) error
|
|
}
|