tutus-chain/pkg/core/native/nativenames/names.go

56 lines
1.1 KiB
Go

package nativenames
// Names of all native contracts.
const (
Management = "ContractManagement"
Ledger = "LedgerContract"
Neo = "NeoToken"
Gas = "GasToken"
Policy = "PolicyContract"
Oracle = "OracleContract"
Designation = "RoleManagement"
Notary = "Notary"
CryptoLib = "CryptoLib"
StdLib = "StdLib"
Treasury = "Treasury"
PersonToken = "PersonToken"
RoleRegistry = "RoleRegistry"
VTS = "VTS"
)
// All contains the list of all native contract names ordered by the contract ID.
var All = []string{
Management,
StdLib,
CryptoLib,
Ledger,
Neo,
Gas,
Policy,
Designation,
Oracle,
Notary,
Treasury,
PersonToken,
RoleRegistry,
VTS,
}
// IsValid checks if the name is a valid native contract's name.
func IsValid(name string) bool {
return name == Management ||
name == Ledger ||
name == Neo ||
name == Gas ||
name == Policy ||
name == Oracle ||
name == Designation ||
name == Notary ||
name == CryptoLib ||
name == StdLib ||
name == Treasury ||
name == PersonToken ||
name == RoleRegistry ||
name == VTS
}