neoneo-go/pkg/core/native/nativehashes/hashes.go
Anna Shaleva 2d3d52e3d0 native: add nativehashes package
Similar to nativenames, instantiate once and then reuse everywhere.

Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
2024-04-25 13:26:54 +03:00

34 lines
1.1 KiB
Go

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)
}