From 2d3d52e3d00a63c1d80f67405669c3a0309ba1a3 Mon Sep 17 00:00:00 2001 From: Anna Shaleva Date: Tue, 9 Apr 2024 14:38:18 +0300 Subject: [PATCH] native: add nativehashes package Similar to nativenames, instantiate once and then reuse everywhere. Signed-off-by: Anna Shaleva --- pkg/core/native/nativehashes/hashes.go | 34 ++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 pkg/core/native/nativehashes/hashes.go diff --git a/pkg/core/native/nativehashes/hashes.go b/pkg/core/native/nativehashes/hashes.go new file mode 100644 index 000000000..646da8368 --- /dev/null +++ b/pkg/core/native/nativehashes/hashes.go @@ -0,0 +1,34 @@ +package nativehashes + +import ( + "github.com/nspcc-dev/neo-go/pkg/core/native/nativenames" + "github.com/nspcc-dev/neo-go/pkg/core/state" + "github.com/nspcc-dev/neo-go/pkg/util" +) + +// Hashes of all native contracts. +var ( + Management util.Uint160 + Ledger util.Uint160 + Neo util.Uint160 + Gas util.Uint160 + Policy util.Uint160 + Oracle util.Uint160 + Designation util.Uint160 + Notary util.Uint160 + CryptoLib util.Uint160 + StdLib util.Uint160 +) + +func init() { + Management = state.CreateNativeContractHash(nativenames.Management) + Ledger = state.CreateNativeContractHash(nativenames.Ledger) + Neo = state.CreateNativeContractHash(nativenames.Neo) + Gas = state.CreateNativeContractHash(nativenames.Gas) + Policy = state.CreateNativeContractHash(nativenames.Policy) + Oracle = state.CreateNativeContractHash(nativenames.Oracle) + Designation = state.CreateNativeContractHash(nativenames.Designation) + Notary = state.CreateNativeContractHash(nativenames.Notary) + CryptoLib = state.CreateNativeContractHash(nativenames.CryptoLib) + StdLib = state.CreateNativeContractHash(nativenames.StdLib) +}