std

package
v0.94.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 8, 2021 License: MIT Imports: 2 Imported by: 22

Documentation

Overview

Package std provides interface to StdLib native contract. It implements various useful conversion functions.

Index

Constants

View Source
const Hash = "\xc0\xef\x39\xce\xe0\xe4\xe9\x25\xc6\xc2\xa0\x6a\x79\xe1\x44\x0d\xd8\x6f\xce\xac"

Hash represents StdLib contract hash.

Variables

This section is empty.

Functions

func Atoi

func Atoi(s string, base int) int

Atoi converts string to a number in a given base. Base should be either 10 or 16. It uses `atoi` method of StdLib native contract.

func Base58Decode

func Base58Decode(b []byte) []byte

Base58Decode calls `base58Decode` method of StdLib native contract and decodes given base58 string represented as a byte slice into a new byte slice.

func Base58Encode

func Base58Encode(b []byte) string

Base58Encode calls `base58Encode` method of StdLib native contract and encodes given byte slice into a base58 string and returns byte representation of this string.

func Base64Decode

func Base64Decode(b []byte) []byte

Base64Decode calls `base64Decode` method of StdLib native contract and decodes given base64 string represented as a byte slice into byte slice.

func Base64Encode

func Base64Encode(b []byte) string

Base64Encode calls `base64Encode` method of StdLib native contract and encodes given byte slice into a base64 string and returns byte representation of this string.

func Deserialize

func Deserialize(b []byte) interface{}

Deserialize calls `deserialize` method of StdLib native contract and unpacks previously serialized value from a byte slice, it's the opposite of Serialize.

func Itoa

func Itoa(num int, base int) string

Itoa converts num in a given base to string. Base should be either 10 or 16. It uses `itoa` method of StdLib native contract.

func JSONDeserialize

func JSONDeserialize(data []byte) interface{}

JSONDeserialize deserializes value from json. It uses `jsonDeserialize` method of StdLib native contract. It performs deserialization as follows: strings -> []byte (string) from base64 integers -> (u)int* types null -> interface{}(nil) arrays -> []interface{} maps -> map[string]interface{}

func JSONSerialize

func JSONSerialize(item interface{}) []byte

JSONSerialize serializes value to json. It uses `jsonSerialize` method of StdLib native contract. Serialization format is the following: []byte -> base64 string bool -> json boolean nil -> Null string -> base64 encoded sequence of underlying bytes (u)int* -> integer, only value in -2^53..2^53 are allowed []interface{} -> json array map[type1]type2 -> json object with string keys marshaled as strings (not base64).

func Serialize

func Serialize(item interface{}) []byte

Serialize calls `serialize` method of StdLib native contract and serializes any given item into a byte slice. It works for all regular VM types (not ones from interop package) and allows to save them in storage or pass into Notify and then Deserialize them on the next run or in the external event receiver.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL