package compiler // Syscall represents NEO or System syscall API with flag for proper AVM generation type Syscall struct { API string ConvertResultToStruct bool } // All lists are sorted, keep 'em this way, please. var syscalls = map[string]map[string]Syscall{ "binary": { "Base64Decode": {"System.Binary.Base64Decode", false}, "Base64Encode": {"System.Binary.Base64Encode", false}, "Deserialize": {"System.Binary.Deserialize", false}, "Serialize": {"System.Binary.Serialize", false}, }, "blockchain": { "GetBlock": {"System.Blockchain.GetBlock", true}, "GetContract": {"System.Blockchain.GetContract", true}, "GetHeight": {"System.Blockchain.GetHeight", false}, "GetTransaction": {"System.Blockchain.GetTransaction", true}, "GetTransactionFromBlock": {"System.Blockchain.GetTransactionFromBlock", false}, "GetTransactionHeight": {"System.Blockchain.GetTransactionHeight", false}, }, "contract": { "Create": {"System.Contract.Create", true}, "CreateStandardAccount": {"System.Contract.CreateStandardAccount", false}, "Destroy": {"System.Contract.Destroy", false}, "IsStandard": {"System.Contract.IsStandard", false}, "GetCallFlags": {"System.Contract.GetCallFlags", false}, "Update": {"System.Contract.Update", false}, }, "crypto": { "ECDsaSecp256k1Verify": {"Neo.Crypto.VerifyWithECDsaSecp256k1", false}, "ECDSASecp256k1CheckMultisig": {"Neo.Crypto.CheckMultisigWithECDsaSecp256k1", false}, "ECDsaSecp256r1Verify": {"Neo.Crypto.VerifyWithECDsaSecp256r1", false}, "ECDSASecp256r1CheckMultisig": {"Neo.Crypto.CheckMultisigWithECDsaSecp256r1", false}, "RIPEMD160": {"Neo.Crypto.RIPEMD160", false}, "SHA256": {"Neo.Crypto.SHA256", false}, }, "enumerator": { "Concat": {"System.Enumerator.Concat", false}, "Create": {"System.Enumerator.Create", false}, "Next": {"System.Enumerator.Next", false}, "Value": {"System.Enumerator.Value", false}, }, "engine": { "AppCall": {"System.Contract.Call", false}, }, "iterator": { "Concat": {"System.Iterator.Concat", false}, "Create": {"System.Iterator.Create", false}, "Key": {"System.Iterator.Key", false}, "Keys": {"System.Iterator.Keys", false}, "Next": {"System.Enumerator.Next", false}, "Value": {"System.Enumerator.Value", false}, "Values": {"System.Iterator.Values", false}, }, "json": { "Deserialize": {"System.Json.Deserialize", false}, "Serialize": {"System.Json.Serialize", false}, }, "runtime": { "GasLeft": {"System.Runtime.GasLeft", false}, "GetInvocationCounter": {"System.Runtime.GetInvocationCounter", false}, "GetCallingScriptHash": {"System.Runtime.GetCallingScriptHash", false}, "GetEntryScriptHash": {"System.Runtime.GetEntryScriptHash", false}, "GetExecutingScriptHash": {"System.Runtime.GetExecutingScriptHash", false}, "GetNotifications": {"System.Runtime.GetNotifications", false}, "GetScriptContainer": {"System.Runtime.GetScriptContainer", true}, "GetTime": {"System.Runtime.GetTime", false}, "GetTrigger": {"System.Runtime.GetTrigger", false}, "CheckWitness": {"System.Runtime.CheckWitness", false}, "Log": {"System.Runtime.Log", false}, "Notify": {"System.Runtime.Notify", false}, "Platform": {"System.Runtime.Platform", false}, }, "storage": { "ConvertContextToReadOnly": {"System.Storage.AsReadOnly", false}, "Delete": {"System.Storage.Delete", false}, "Find": {"System.Storage.Find", false}, "Get": {"System.Storage.Get", false}, "GetContext": {"System.Storage.GetContext", false}, "GetReadOnlyContext": {"System.Storage.GetReadOnlyContext", false}, "Put": {"System.Storage.Put", false}, "PutEx": {"System.Storage.PutEx", false}, }, }