Updated ABI definitions & parsing (#1662)

* Updated ABI definitions & parsing

* Run type generation

* Definitions (should be ok-ish)

* Cleanup names

* Allow aliasses on structs (JSON parsing)

* Cleanup json mapping passing

* s/types/lookup/

* Parsing as per current output

* InkSelector

* MtRegistryIndex

* String lookup tests

* Remove serd ovverride comments (it works as-is)

* inkRegistry tests

* Extract primitive types

* s/ty/id/

* Start of parsing into types (actually to be TypeDef)

* Parsing

* stringify struct fields

* Small cleanups

* Add type index to project lookup

* Prefix with index

* Fix interface generation

* Latest contract metadata (#2118)

* Add new (provisional) incrementer contract metadata

* Update and regenerate type definitions

* WIP: generate new format scale-info types

* WIP: implementing variants

* Implement variants

* Fix up type resolution

* Fix registry spec tests

* Fix lints and some tests

* Fix inkTypes tests

* Fix some lints

* Make imports same line like original

* Comment out (temporarily) sanitize import to make CI pass

* Sanitize

* Remove indices

* Remove index

* Adjust ContractAbi interface (empty rpc)

* linting

* Pull in Andrew's changes

* Cleanups

* Some more cleanups

* Update with v3 contracts

* Adjust with actual types

* Regenerate

* Update ABI parsing (#2695)

* Adjust ABI code

* Cleanup

* Merge non-code

* Type naming

* Simplify Base

* Rename 1

* rename 2

* Rename 3

* Simplify

* Add index to AbiMessage

* Pass actual message or index for call

* Rename param

* Simplify

* Expose call & exec

* s/call/read/

* Cleanup asserts

* AccountId as per spec

* displayName is path

* Update definitions

* Flatten ABIType into TypeDef

* Rewrite

* Fix tests

* Updates

Co-authored-by: Andrew Jones <ascjones@gmail.com>
This commit is contained in:
Jaco Greeff
2020-10-09 18:33:31 +02:00
committed by GitHub
co-authored by Andrew Jones
parent 89e0548092
commit 453dd9e49a
61 changed files with 6978 additions and 11163 deletions
-467
View File
@@ -1,467 +0,0 @@
{
"registry": {
"strings": [
"StorageAndEnv",
"app",
"__ink_private",
"__ink_storage",
"__storage",
"Storage",
"value",
"Value",
"ink_core",
"storage",
"cell",
"SyncCell",
"sync_cell",
"Key",
"key",
"name",
"vec",
"Vec",
"elems",
"__env",
"EnvAccess",
"env2",
"env_access",
"immutable",
"TestEnv",
"test",
"accessor",
"DefaultSrmlTypes",
"types",
"access",
"EnvAccessMut",
"mutable",
"env",
"PhantomData",
"buffer",
"has_interacted",
"has_returned_value",
"new",
"init_value",
"bool",
"default",
"flip",
"get"
],
"types": [
{
"id": {
"custom.name": 1,
"custom.namespace": [
2,
2,
3,
4
],
"custom.params": []
},
"def": {
"struct.fields": [
{
"name": 5,
"type": 2
},
{
"name": 20,
"type": 14
}
]
}
},
{
"id": {
"custom.name": 6,
"custom.namespace": [
2,
2,
3,
4
],
"custom.params": []
},
"def": {
"struct.fields": [
{
"name": 7,
"type": 3
},
{
"name": 16,
"type": 9
}
]
}
},
{
"id": {
"custom.name": 8,
"custom.namespace": [
9,
10,
7
],
"custom.params": [
4
]
},
"def": {
"struct.fields": [
{
"name": 11,
"type": 5
}
]
}
},
{
"id": "bool",
"def": "builtin"
},
{
"id": {
"custom.name": 12,
"custom.namespace": [
9,
10,
11,
13
],
"custom.params": [
4
]
},
"def": {
"struct.fields": [
{
"name": 11,
"type": 6
}
]
}
},
{
"id": {
"custom.name": 14,
"custom.namespace": [
9,
10,
15
],
"custom.params": []
},
"def": {
"tuple_struct.types": [
7
]
}
},
{
"id": {
"array.len": 32,
"array.type": 8
},
"def": "builtin"
},
{
"id": "u8",
"def": "builtin"
},
{
"id": {
"custom.name": 8,
"custom.namespace": [
9,
10,
7
],
"custom.params": [
10
]
},
"def": {
"struct.fields": [
{
"name": 11,
"type": 13
}
]
}
},
{
"id": "str",
"def": {
"struct.fields": [
{
"name": 17,
"type": 11
}
]
}
},
{
"id": {
"custom.name": 18,
"custom.namespace": [],
"custom.params": [
8
]
},
"def": {
"struct.fields": [
{
"name": 19,
"type": 12
}
]
}
},
{
"id": {
"slice.type": 8
},
"def": "builtin"
},
{
"id": {
"custom.name": 12,
"custom.namespace": [
9,
10,
11,
13
],
"custom.params": [
10
]
},
"def": {
"struct.fields": [
{
"name": 11,
"type": 6
}
]
}
},
{
"id": {
"custom.name": 21,
"custom.namespace": [
9,
22,
23,
24
],
"custom.params": [
15
]
},
"def": {
"struct.fields": [
{
"name": 30,
"type": 17
}
]
}
},
{
"id": {
"custom.name": 25,
"custom.namespace": [
9,
22,
26,
27
],
"custom.params": [
16
]
},
"def": {
"struct.fields": []
}
},
{
"id": {
"custom.name": 28,
"custom.namespace": [
9,
22,
29
],
"custom.params": []
},
"def": {
"clike_enum.variants": []
}
},
{
"id": {
"custom.name": 31,
"custom.namespace": [
9,
22,
23,
32
],
"custom.params": [
15
]
},
"def": {
"struct.fields": [
{
"name": 33,
"type": 18
},
{
"name": 35,
"type": 11
},
{
"name": 36,
"type": 4
},
{
"name": 37,
"type": 4
}
]
}
},
{
"id": {
"custom.name": 34,
"custom.namespace": [],
"custom.params": [
15
]
},
"def": {
"tuple_struct.types": []
}
}
]
},
"storage": {
"struct.type": 1,
"struct.fields": [
{
"name": 10,
"layout": {
"struct.type": 2,
"struct.fields": [
{
"name": 7,
"layout": {
"struct.type": 3,
"struct.fields": [
{
"name": 11,
"layout": {
"range.offset": "0x0000000000000000000000000000000000000000000000000000000000000000",
"range.len": 1,
"range.elem_type": 4
}
}
]
}
},
{
"name": 16,
"layout": {
"struct.type": 9,
"struct.fields": [
{
"name": 11,
"layout": {
"range.offset": "0x0000000000000000000000000000000000000000000000000000000000000001",
"range.len": 1,
"range.elem_type": 10
}
}
]
}
}
]
}
}
]
},
"contract": {
"name": 2,
"constructors": [
{
"name": 38,
"selector": "[\"0x5E\",\"0xBD\",\"0x88\",\"0xD6\"]",
"args": [
{
"name": 16,
"type": {
"ty": 11,
"display_name": [
18
]
}
},
{
"name": 39,
"type": {
"ty": 4,
"display_name": [
40
]
}
}
],
"docs": [
"Constructor that initializes the `bool` value to the given `init_value`."
]
},
{
"name": 41,
"selector": "[\"0x02\",\"0x22\",\"0xFF\",\"0x18\"]",
"args": [],
"docs": [
"Constructor that initializes the `bool` value to `false`.",
"",
"Constructors can delegate to other constructors."
]
}
],
"messages": [
{
"name": 42,
"selector": "[\"0x8C\",\"0x97\",\"0xDB\",\"0x39\"]",
"mutates": true,
"args": [],
"return_type": null,
"docs": [
"A message that can be called on instantiated contracts.",
"This one flips the value of the stored `bool` from `true`",
"to `false` and vice versa."
]
},
{
"name": 43,
"selector": "[\"0x25\",\"0x44\",\"0x4A\",\"0xFE\"]",
"mutates": false,
"args": [],
"return_type": {
"ty": 4,
"display_name": [
40
]
},
"docs": [
"Simply returns the current value of our `bool`."
]
}
],
"events": [],
"docs": []
}
}
-142
View File
@@ -1,142 +0,0 @@
{
"name": "Types",
"deploy": {
"args": []
},
"messages": [
{
"name": "primitive",
"selector": 11111,
"mutates": true,
"args": [
{
"name": "bool",
"type": "bool"
},
{
"name": "u32",
"type": "u32"
}
],
"return_type": "bool"
},
{
"name": "vector",
"selector": 2222,
"mutates": false,
"args": [
{
"name": "Vec_u8",
"type": {
"Vec<T>": {
"T": "u8"
}
}
},
{
"name": "Vec_u32",
"type": {
"Vec<T>": {
"T": "u32"
}
}
}
],
"return_type": {
"Vec<T>": {
"T": "bool"
}
}
},
{
"name": "vector_fixed",
"selector": 3333,
"mutates": false,
"args": [
{
"name": "vec_u8_length_32",
"type": {
"[T;n]": {
"T": "u8",
"n": 32
}
}
}
],
"return_type": {
"[T;n]": {
"T": "u32",
"n": 8
}
}
},
{
"name": "option",
"selector": 4444,
"mutates": false,
"args": [
{
"name": "Option_u32",
"type": {
"Option<T>": {
"T": "u32"
}
}
}
],
"return_type": {
"Option<T>": {
"T": "bool"
}
}
},
{
"name": "tuple",
"selector": 5555,
"mutates": false,
"args": [
{
"name": "Tuple_u32_u64",
"type": ["u32", "u64"]
}
],
"return_type": ["bool"]
},
{
"name": "result",
"selector": 666,
"mutates": false,
"args": [],
"return_type": {
"Result<T,E>": {
"T": "u32",
"E": "u32"
}
}
},
{
"name": "nested",
"selector": 987654321,
"mutates": false,
"args": [
{
"name": "option_vec",
"type": {
"Option<T>": {
"T": {
"Vec<T>": {
"T": "u32"
}
}
}
}
}
],
"return_type": {
"Vec<T>": {
"T": ["u32", "u64"]
}
}
}
]
}
@@ -0,0 +1,259 @@
[
{
"displayName": "Header",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "last_vacant"
},
{
"info": 6,
"type": "u32",
"name": "len"
},
{
"info": 6,
"type": "u32",
"name": "len_entries"
}
],
"type": "{\"last_vacant\":\"u32\",\"len\":\"u32\",\"len_entries\":\"u32\"}"
},
{
"info": 6,
"type": "u32"
},
{
"displayName": "Entry",
"namespace": "ink_storage::collections::stash",
"params": [
{
"displayName": "Hash",
"namespace": "ink_env::types",
"info": 6,
"type": "Hash"
}
],
"info": 3,
"sub": [
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}",
"name": "Vacant"
},
{
"displayName": "Hash",
"namespace": "ink_env::types",
"info": 6,
"type": "Hash",
"name": "Occupied"
}
],
"type": "{\"_enum\":{\"Vacant\":\"VacantEntry\",\"Occupied\":\"Hash\"}}"
},
{
"displayName": "Hash",
"namespace": "ink_env::types",
"info": 6,
"type": "Hash"
},
{
"info": 12,
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"type": "[u8;32]"
},
{
"info": 6,
"type": "u8"
},
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}"
},
{
"displayName": "ValueEntry",
"namespace": "ink_storage::collections::hashmap",
"params": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"info": 9,
"sub": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId",
"name": "value"
},
{
"info": 6,
"type": "u32",
"name": "key_index"
}
],
"type": "{\"value\":\"AccountId\",\"key_index\":\"u32\"}"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
},
{
"displayName": "Result",
"params": [
{
"info": 10,
"sub": [],
"type": "()"
},
{
"displayName": "Error",
"namespace": "dns::dns",
"info": 3,
"sub": [
{
"ext": {
"discriminant": 0
},
"info": 6,
"name": "NameAlreadyExists",
"type": "Null"
},
{
"ext": {
"discriminant": 1
},
"info": 6,
"name": "CallerIsNotOwner",
"type": "Null"
}
],
"type": "[\"NameAlreadyExists\", \"CallerIsNotOwner\"]"
}
],
"info": 7,
"sub": [
{
"name": "Ok",
"info": 10,
"sub": [],
"type": "()"
},
{
"name": "Error",
"displayName": "Error",
"namespace": "dns::dns",
"info": 3,
"sub": [
{
"ext": {
"discriminant": 0
},
"info": 6,
"name": "NameAlreadyExists",
"type": "Null"
},
{
"ext": {
"discriminant": 1
},
"info": 6,
"name": "CallerIsNotOwner",
"type": "Null"
}
],
"type": "[\"NameAlreadyExists\", \"CallerIsNotOwner\"]"
}
],
"type": "Result<(), Error>"
},
{
"info": 10,
"sub": [],
"type": "()"
},
{
"displayName": "Error",
"namespace": "dns::dns",
"info": 3,
"sub": [
{
"ext": {
"discriminant": 0
},
"info": 6,
"name": "NameAlreadyExists",
"type": "Null"
},
{
"ext": {
"discriminant": 1
},
"info": 6,
"name": "CallerIsNotOwner",
"type": "Null"
}
],
"type": "[\"NameAlreadyExists\", \"CallerIsNotOwner\"]"
},
{
"displayName": "Option",
"params": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"info": 5,
"sub": {
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
},
"type": "Option<AccountId>"
}
]
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,571 @@
[
{
"displayName": "Header",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "last_vacant"
},
{
"info": 6,
"type": "u32",
"name": "len"
},
{
"info": 6,
"type": "u32",
"name": "len_entries"
}
],
"type": "{\"last_vacant\":\"u32\",\"len\":\"u32\",\"len_entries\":\"u32\"}"
},
{
"info": 6,
"type": "u32"
},
{
"displayName": "Entry",
"namespace": "ink_storage::collections::stash",
"params": [
{
"info": 6,
"type": "u32"
}
],
"info": 3,
"sub": [
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}",
"name": "Vacant"
},
{
"info": 6,
"type": "u32",
"name": "Occupied"
}
],
"type": "{\"_enum\":{\"Vacant\":\"VacantEntry\",\"Occupied\":\"u32\"}}"
},
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}"
},
{
"displayName": "ValueEntry",
"namespace": "ink_storage::collections::hashmap",
"params": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"info": 9,
"sub": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId",
"name": "value"
},
{
"info": 6,
"type": "u32",
"name": "key_index"
}
],
"type": "{\"value\":\"AccountId\",\"key_index\":\"u32\"}"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
},
{
"info": 12,
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"type": "[u8;32]"
},
{
"info": 6,
"type": "u8"
},
{
"displayName": "Entry",
"namespace": "ink_storage::collections::stash",
"params": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"info": 3,
"sub": [
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}",
"name": "Vacant"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId",
"name": "Occupied"
}
],
"type": "{\"_enum\":{\"Vacant\":\"VacantEntry\",\"Occupied\":\"AccountId\"}}"
},
{
"displayName": "ValueEntry",
"namespace": "ink_storage::collections::hashmap",
"params": [
{
"info": 6,
"type": "u32"
}
],
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "value"
},
{
"info": 6,
"type": "u32",
"name": "key_index"
}
],
"type": "{\"value\":\"u32\",\"key_index\":\"u32\"}"
},
{
"displayName": "Entry",
"namespace": "ink_storage::collections::stash",
"params": [
{
"info": 10,
"sub": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"type": "(AccountId, AccountId)"
}
],
"info": 3,
"sub": [
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}",
"name": "Vacant"
},
{
"info": 10,
"sub": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"type": "(AccountId, AccountId)",
"name": "Occupied"
}
],
"type": "{\"_enum\":{\"Vacant\":\"VacantEntry\",\"Occupied\":\"(AccountId, AccountId)\"}}"
},
{
"info": 10,
"sub": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"type": "(AccountId, AccountId)"
},
{
"displayName": "ValueEntry",
"namespace": "ink_storage::collections::hashmap",
"params": [
{
"info": 6,
"type": "bool"
}
],
"info": 9,
"sub": [
{
"info": 6,
"type": "bool",
"name": "value"
},
{
"info": 6,
"type": "u32",
"name": "key_index"
}
],
"type": "{\"value\":\"bool\",\"key_index\":\"u32\"}"
},
{
"info": 6,
"type": "bool"
},
{
"displayName": "Option",
"params": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"info": 5,
"sub": {
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
},
"type": "Option<AccountId>"
},
{
"displayName": "Result",
"params": [
{
"info": 10,
"sub": [],
"type": "()"
},
{
"displayName": "Error",
"namespace": "erc721::erc721",
"info": 3,
"sub": [
{
"ext": {
"discriminant": 0
},
"info": 6,
"name": "NotOwner",
"type": "Null"
},
{
"ext": {
"discriminant": 1
},
"info": 6,
"name": "NotApproved",
"type": "Null"
},
{
"ext": {
"discriminant": 2
},
"info": 6,
"name": "TokenExists",
"type": "Null"
},
{
"ext": {
"discriminant": 3
},
"info": 6,
"name": "TokenNotFound",
"type": "Null"
},
{
"ext": {
"discriminant": 4
},
"info": 6,
"name": "CannotInsert",
"type": "Null"
},
{
"ext": {
"discriminant": 5
},
"info": 6,
"name": "CannotRemove",
"type": "Null"
},
{
"ext": {
"discriminant": 6
},
"info": 6,
"name": "CannotFetchValue",
"type": "Null"
},
{
"ext": {
"discriminant": 7
},
"info": 6,
"name": "NotAllowed",
"type": "Null"
}
],
"type": "[\"NotOwner\", \"NotApproved\", \"TokenExists\", \"TokenNotFound\", \"CannotInsert\", \"CannotRemove\", \"CannotFetchValue\", \"NotAllowed\"]"
}
],
"info": 7,
"sub": [
{
"name": "Ok",
"info": 10,
"sub": [],
"type": "()"
},
{
"name": "Error",
"displayName": "Error",
"namespace": "erc721::erc721",
"info": 3,
"sub": [
{
"ext": {
"discriminant": 0
},
"info": 6,
"name": "NotOwner",
"type": "Null"
},
{
"ext": {
"discriminant": 1
},
"info": 6,
"name": "NotApproved",
"type": "Null"
},
{
"ext": {
"discriminant": 2
},
"info": 6,
"name": "TokenExists",
"type": "Null"
},
{
"ext": {
"discriminant": 3
},
"info": 6,
"name": "TokenNotFound",
"type": "Null"
},
{
"ext": {
"discriminant": 4
},
"info": 6,
"name": "CannotInsert",
"type": "Null"
},
{
"ext": {
"discriminant": 5
},
"info": 6,
"name": "CannotRemove",
"type": "Null"
},
{
"ext": {
"discriminant": 6
},
"info": 6,
"name": "CannotFetchValue",
"type": "Null"
},
{
"ext": {
"discriminant": 7
},
"info": 6,
"name": "NotAllowed",
"type": "Null"
}
],
"type": "[\"NotOwner\", \"NotApproved\", \"TokenExists\", \"TokenNotFound\", \"CannotInsert\", \"CannotRemove\", \"CannotFetchValue\", \"NotAllowed\"]"
}
],
"type": "Result<(), Error>"
},
{
"info": 10,
"sub": [],
"type": "()"
},
{
"displayName": "Error",
"namespace": "erc721::erc721",
"info": 3,
"sub": [
{
"ext": {
"discriminant": 0
},
"info": 6,
"name": "NotOwner",
"type": "Null"
},
{
"ext": {
"discriminant": 1
},
"info": 6,
"name": "NotApproved",
"type": "Null"
},
{
"ext": {
"discriminant": 2
},
"info": 6,
"name": "TokenExists",
"type": "Null"
},
{
"ext": {
"discriminant": 3
},
"info": 6,
"name": "TokenNotFound",
"type": "Null"
},
{
"ext": {
"discriminant": 4
},
"info": 6,
"name": "CannotInsert",
"type": "Null"
},
{
"ext": {
"discriminant": 5
},
"info": 6,
"name": "CannotRemove",
"type": "Null"
},
{
"ext": {
"discriminant": 6
},
"info": 6,
"name": "CannotFetchValue",
"type": "Null"
},
{
"ext": {
"discriminant": 7
},
"info": 6,
"name": "NotAllowed",
"type": "Null"
}
],
"type": "[\"NotOwner\", \"NotApproved\", \"TokenExists\", \"TokenNotFound\", \"CannotInsert\", \"CannotRemove\", \"CannotFetchValue\", \"NotAllowed\"]"
}
]
@@ -1,169 +1,6 @@
[
{
"info": 8,
"type": "{\"value\": {\"cell\": {\"cell\": ([u8;32])}}}",
"name": "Flipper",
"namespace": "flipper::normal",
"sub": [
{
"info": 8,
"type": "{\"cell\": {\"cell\": ([u8;32])}}",
"name": "value",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 6,
"type": "bool"
}
],
"sub": [
{
"info": 8,
"type": "{\"cell\": ([u8;32])}",
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 6,
"type": "bool"
}
],
"sub": [
{
"info": 9,
"type": "([u8;32])",
"name": "cell",
"namespace": "ink_core::storage::key",
"sub": [
{
"info": 11,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
]
}
]
}
]
}
]
},
{
"info": 8,
"type": "{\"cell\": {\"cell\": ([u8;32])}}",
"name": "Value",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 6,
"type": "bool"
}
],
"sub": [
{
"info": 8,
"type": "{\"cell\": ([u8;32])}",
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 6,
"type": "bool"
}
],
"sub": [
{
"info": 9,
"type": "([u8;32])",
"name": "cell",
"namespace": "ink_core::storage::key",
"sub": [
{
"info": 11,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
]
}
]
}
]
},
{
"info": 6,
"type": "bool"
},
{
"info": 8,
"type": "{\"cell\": ([u8;32])}",
"name": "SyncCell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 6,
"type": "bool"
}
],
"sub": [
{
"info": 9,
"type": "([u8;32])",
"name": "cell",
"namespace": "ink_core::storage::key",
"sub": [
{
"info": 11,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
]
}
]
},
{
"info": 9,
"type": "([u8;32])",
"name": "Key",
"namespace": "ink_core::storage::key",
"sub": [
{
"info": 11,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
]
},
{
"info": 11,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
}
},
{
"info": 6,
"type": "u8"
}
]
]
@@ -1,173 +1,6 @@
[
{
"info": 10,
"type": "{ \"value\": \"{ \"cell\": \"{ \"cell\": \"([u8;32])\"} }<u32>\"} }<u32>\"} }",
"sub": [
{
"info": 10,
"type": "{ \"cell\": \"{ \"cell\": \"([u8;32])\"} }<u32>\"} }",
"sub": [
{
"info": 10,
"type": "{ \"cell\": \"([u8;32])\"} }",
"sub": [
{
"info": 11,
"type": "([u8;32])",
"sub": [
{
"info": 13,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 7,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 7,
"type": "u32"
}
]
}
],
"name": "value",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 7,
"type": "u32"
}
]
}
],
"name": "Incrementer",
"namespace": "incrementer::normal"
},
{
"info": 10,
"type": "{ \"cell\": \"{ \"cell\": \"([u8;32])\"} }<u32>\"} }",
"sub": [
{
"info": 10,
"type": "{ \"cell\": \"([u8;32])\"} }",
"sub": [
{
"info": 11,
"type": "([u8;32])",
"sub": [
{
"info": 13,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 7,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 7,
"type": "u32"
}
]
}
],
"name": "Value",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 7,
"type": "u32"
}
]
},
{
"info": 7,
"type": "u32"
},
{
"info": 10,
"type": "{ \"cell\": \"([u8;32])\"} }",
"sub": [
{
"info": 11,
"type": "([u8;32])",
"sub": [
{
"info": 13,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 7,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "SyncCell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 7,
"type": "u32"
}
]
},
{
"info": 11,
"type": "([u8;32])",
"sub": [
{
"info": 13,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 7,
"type": "u8"
},
"index": 0
}
],
"name": "Key",
"namespace": "ink_core::storage::key"
},
{
"info": 13,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 7,
"type": "u8"
}
},
{
"info": 7,
"type": "u8"
},
{
"info": 7,
"type": "bool"
"info": 6,
"type": "i32"
}
]
]
@@ -0,0 +1,680 @@
[
{
"displayName": "Header",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "last_vacant"
},
{
"info": 6,
"type": "u32",
"name": "len"
},
{
"info": 6,
"type": "u32",
"name": "len_entries"
}
],
"type": "{\"last_vacant\":\"u32\",\"len\":\"u32\",\"len_entries\":\"u32\"}"
},
{
"info": 6,
"type": "u32"
},
{
"displayName": "Entry",
"namespace": "ink_storage::collections::stash",
"params": [
{
"info": 10,
"sub": [
{
"info": 6,
"type": "u32"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"type": "(u32, AccountId)"
}
],
"info": 3,
"sub": [
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}",
"name": "Vacant"
},
{
"info": 10,
"sub": [
{
"info": 6,
"type": "u32"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"type": "(u32, AccountId)",
"name": "Occupied"
}
],
"type": "{\"_enum\":{\"Vacant\":\"VacantEntry\",\"Occupied\":\"(u32, AccountId)\"}}"
},
{
"info": 10,
"sub": [
{
"info": 6,
"type": "u32"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"type": "(u32, AccountId)"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
},
{
"info": 12,
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"type": "[u8;32]"
},
{
"info": 6,
"type": "u8"
},
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}"
},
{
"displayName": "ValueEntry",
"namespace": "ink_storage::collections::hashmap",
"params": [
{
"info": 10,
"sub": [],
"type": "()"
}
],
"info": 9,
"sub": [
{
"info": 10,
"sub": [],
"type": "()",
"name": "value"
},
{
"info": 6,
"type": "u32",
"name": "key_index"
}
],
"type": "{\"value\":\"()\",\"key_index\":\"u32\"}"
},
{
"info": 10,
"sub": [],
"type": "()"
},
{
"displayName": "Entry",
"namespace": "ink_storage::collections::stash",
"params": [
{
"info": 6,
"type": "u32"
}
],
"info": 3,
"sub": [
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}",
"name": "Vacant"
},
{
"info": 6,
"type": "u32",
"name": "Occupied"
}
],
"type": "{\"_enum\":{\"Vacant\":\"VacantEntry\",\"Occupied\":\"u32\"}}"
},
{
"displayName": "ValueEntry",
"namespace": "ink_storage::collections::hashmap",
"params": [
{
"info": 6,
"type": "u32"
}
],
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "value"
},
{
"info": 6,
"type": "u32",
"name": "key_index"
}
],
"type": "{\"value\":\"u32\",\"key_index\":\"u32\"}"
},
{
"displayName": "Entry",
"namespace": "ink_storage::collections::stash",
"params": [
{
"displayName": "Transaction",
"namespace": "multisig_plain::multisig_plain",
"info": 9,
"sub": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId",
"name": "callee"
},
{
"info": 12,
"length": 4,
"sub": {
"info": 6,
"type": "u8"
},
"type": "[u8;4]",
"name": "selector"
},
{
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>",
"name": "input"
},
{
"info": 6,
"type": "u128",
"name": "transferred_value"
},
{
"info": 6,
"type": "u64",
"name": "gas_limit"
}
],
"type": "{\"callee\":\"AccountId\",\"selector\":\"[u8;4]\",\"input\":\"Vec<u8>\",\"transferred_value\":\"u128\",\"gas_limit\":\"u64\"}"
}
],
"info": 3,
"sub": [
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}",
"name": "Vacant"
},
{
"displayName": "Transaction",
"namespace": "multisig_plain::multisig_plain",
"info": 9,
"sub": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId",
"name": "callee"
},
{
"info": 12,
"length": 4,
"sub": {
"info": 6,
"type": "u8"
},
"type": "[u8;4]",
"name": "selector"
},
{
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>",
"name": "input"
},
{
"info": 6,
"type": "u128",
"name": "transferred_value"
},
{
"info": 6,
"type": "u64",
"name": "gas_limit"
}
],
"type": "{\"callee\":\"AccountId\",\"selector\":\"[u8;4]\",\"input\":\"Vec<u8>\",\"transferred_value\":\"u128\",\"gas_limit\":\"u64\"}",
"name": "Occupied"
}
],
"type": "{\"_enum\":{\"Vacant\":\"VacantEntry\",\"Occupied\":\"Transaction\"}}"
},
{
"displayName": "Transaction",
"namespace": "multisig_plain::multisig_plain",
"info": 9,
"sub": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId",
"name": "callee"
},
{
"info": 12,
"length": 4,
"sub": {
"info": 6,
"type": "u8"
},
"type": "[u8;4]",
"name": "selector"
},
{
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>",
"name": "input"
},
{
"info": 6,
"type": "u128",
"name": "transferred_value"
},
{
"info": 6,
"type": "u64",
"name": "gas_limit"
}
],
"type": "{\"callee\":\"AccountId\",\"selector\":\"[u8;4]\",\"input\":\"Vec<u8>\",\"transferred_value\":\"u128\",\"gas_limit\":\"u64\"}"
},
{
"info": 12,
"length": 4,
"sub": {
"info": 6,
"type": "u8"
},
"type": "[u8;4]"
},
{
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>"
},
{
"info": 6,
"type": "u128"
},
{
"info": 6,
"type": "u64"
},
{
"displayName": "Entry",
"namespace": "ink_storage::collections::stash",
"params": [
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
}
],
"info": 3,
"sub": [
{
"displayName": "VacantEntry",
"namespace": "ink_storage::collections::stash",
"info": 9,
"sub": [
{
"info": 6,
"type": "u32",
"name": "next"
},
{
"info": 6,
"type": "u32",
"name": "prev"
}
],
"type": "{\"next\":\"u32\",\"prev\":\"u32\"}",
"name": "Vacant"
},
{
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId",
"name": "Occupied"
}
],
"type": "{\"_enum\":{\"Vacant\":\"VacantEntry\",\"Occupied\":\"AccountId\"}}"
},
{
"info": 11,
"sub": {
"displayName": "AccountId",
"namespace": "ink_env::types",
"info": 6,
"type": "AccountId"
},
"type": "Vec<AccountId>"
},
{
"info": 10,
"sub": [
{
"info": 6,
"type": "u32"
},
{
"displayName": "ConfirmationStatus",
"namespace": "multisig_plain::multisig_plain",
"info": 3,
"sub": [
{
"info": 10,
"sub": [],
"name": "Confirmed"
},
{
"info": 6,
"type": "u32",
"name": "ConfirmationsNeeded"
}
],
"type": "{\"_enum\":{\"Confirmed\":\"()\",\"ConfirmationsNeeded\":\"u32\"}}"
}
],
"type": "(u32, ConfirmationStatus)"
},
{
"displayName": "ConfirmationStatus",
"namespace": "multisig_plain::multisig_plain",
"info": 3,
"sub": [
{
"info": 10,
"sub": [],
"name": "Confirmed"
},
{
"info": 6,
"type": "u32",
"name": "ConfirmationsNeeded"
}
],
"type": "{\"_enum\":{\"Confirmed\":\"()\",\"ConfirmationsNeeded\":\"u32\"}}"
},
{
"displayName": "Result",
"params": [
{
"info": 10,
"sub": [],
"type": "()"
},
{
"info": 10,
"sub": [],
"type": "()"
}
],
"info": 7,
"sub": [
{
"name": "Ok",
"info": 10,
"sub": [],
"type": "()"
},
{
"name": "Error",
"info": 10,
"sub": [],
"type": "()"
}
],
"type": "Result<(), ()>"
},
{
"displayName": "Result",
"params": [
{
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>"
},
{
"info": 10,
"sub": [],
"type": "()"
}
],
"info": 7,
"sub": [
{
"name": "Ok",
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>"
},
{
"name": "Error",
"info": 10,
"sub": [],
"type": "()"
}
],
"type": "Result<Vec<u8>, ()>"
},
{
"displayName": "Result",
"params": [
{
"displayName": "Option",
"params": [
{
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>"
}
],
"info": 5,
"sub": {
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>"
},
"type": "Option<Vec<u8>>"
},
{
"info": 10,
"sub": [],
"type": "()"
}
],
"info": 7,
"sub": [
{
"name": "Ok",
"displayName": "Option",
"params": [
{
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>"
}
],
"info": 5,
"sub": {
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>"
},
"type": "Option<Vec<u8>>"
},
{
"name": "Error",
"info": 10,
"sub": [],
"type": "()"
}
],
"type": "Result<Option<Vec<u8>>, ()>"
},
{
"displayName": "Option",
"params": [
{
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>"
}
],
"info": 5,
"sub": {
"info": 11,
"sub": {
"info": 6,
"type": "u8"
},
"type": "Vec<u8>"
},
"type": "Option<Vec<u8>>"
}
]
File diff suppressed because it is too large Load Diff
@@ -1,972 +0,0 @@
[
{
"info": 9,
"type": "{\"__storage\":\"{\\\"value\\\":\\\"{\\\\\\\"cell\\\\\\\":\\\\\\\"{\\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"([u8;32])\\\\\\\\\\\\\\\"}\\\\\\\"}\\\",\\\"name\\\":\\\"{\\\\\\\"cell\\\\\\\":\\\\\\\"{\\\\\\\\\\\\\\\"cell\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"([u8;32])\\\\\\\\\\\\\\\"}\\\\\\\"}\\\"}\",\"__env\":\"{\\\"access\\\":\\\"{\\\\\\\"env\\\\\\\":\\\\\\\"()\\\\\\\",\\\\\\\"buffer\\\\\\\":\\\\\\\"{\\\\\\\\\\\\\\\"elems\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"Vec<u8>\\\\\\\\\\\\\\\"}\\\\\\\",\\\\\\\"has_interacted\\\\\\\":\\\\\\\"bool\\\\\\\",\\\\\\\"has_returned_value\\\\\\\":\\\\\\\"bool\\\\\\\"}\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"value\":\"{\\\"cell\\\":\\\"{\\\\\\\"cell\\\\\\\":\\\\\\\"([u8;32])\\\\\\\"}\\\"}\",\"name\":\"{\\\"cell\\\":\\\"{\\\\\\\"cell\\\\\\\":\\\\\\\"([u8;32])\\\\\\\"}\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"cell\":\"{\\\"cell\\\":\\\"([u8;32])\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"cell\":\"([u8;32])\"}",
"sub": [
{
"info": 10,
"type": "([u8;32])",
"sub": [
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 6,
"type": "bool"
}
]
}
],
"name": "value",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 6,
"type": "bool"
}
]
},
{
"info": 9,
"type": "{\"cell\":\"{\\\"cell\\\":\\\"([u8;32])\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"cell\":\"([u8;32])\"}",
"sub": [
{
"info": 10,
"type": "([u8;32])",
"sub": [
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 9,
"type": "{\"vec\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "vec",
"params": [
{
"info": 6,
"type": "u8"
}
]
}
]
}
]
}
],
"name": "name",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 9,
"type": "{\"vec\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "vec",
"params": [
{
"info": 6,
"type": "u8"
}
]
}
]
}
]
}
],
"name": "__storage",
"namespace": "app::app::__ink_private::__ink_storage"
},
{
"info": 9,
"type": "{\"access\":\"{\\\"env\\\":\\\"()\\\",\\\"buffer\\\":\\\"{\\\\\\\"elems\\\\\\\":\\\\\\\"Vec<u8>\\\\\\\"}\\\",\\\"has_interacted\\\":\\\"bool\\\",\\\"has_returned_value\\\":\\\"bool\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"env\":\"()\",\"buffer\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\",\"has_interacted\":\"bool\",\"has_returned_value\":\"bool\"}",
"sub": [
{
"info": 10,
"type": "()",
"sub": [],
"name": "env",
"params": [
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
}
]
},
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "buffer",
"params": [
{
"info": 6,
"type": "u8"
}
]
},
{
"info": 6,
"type": "bool",
"name": "has_interacted"
},
{
"info": 6,
"type": "bool",
"name": "has_returned_value"
}
],
"name": "access",
"namespace": "ink_core::env2::env_access::mutable",
"params": [
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
}
]
}
],
"name": "__env",
"namespace": "ink_core::env2::env_access::immutable",
"params": [
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
}
]
}
],
"name": "StorageAndEnv",
"namespace": "app::app::__ink_private::__ink_storage"
},
{
"info": 9,
"type": "{\"value\":\"{\\\"cell\\\":\\\"{\\\\\\\"cell\\\\\\\":\\\\\\\"([u8;32])\\\\\\\"}\\\"}\",\"name\":\"{\\\"cell\\\":\\\"{\\\\\\\"cell\\\\\\\":\\\\\\\"([u8;32])\\\\\\\"}\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"cell\":\"{\\\"cell\\\":\\\"([u8;32])\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"cell\":\"([u8;32])\"}",
"sub": [
{
"info": 10,
"type": "([u8;32])",
"sub": [
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 6,
"type": "bool"
}
]
}
],
"name": "value",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 6,
"type": "bool"
}
]
},
{
"info": 9,
"type": "{\"cell\":\"{\\\"cell\\\":\\\"([u8;32])\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"cell\":\"([u8;32])\"}",
"sub": [
{
"info": 10,
"type": "([u8;32])",
"sub": [
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 9,
"type": "{\"vec\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "vec",
"params": [
{
"info": 6,
"type": "u8"
}
]
}
]
}
]
}
],
"name": "name",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 9,
"type": "{\"vec\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "vec",
"params": [
{
"info": 6,
"type": "u8"
}
]
}
]
}
]
}
],
"name": "Storage",
"namespace": "app::app::__ink_private::__ink_storage"
},
{
"info": 9,
"type": "{\"cell\":\"{\\\"cell\\\":\\\"([u8;32])\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"cell\":\"([u8;32])\"}",
"sub": [
{
"info": 10,
"type": "([u8;32])",
"sub": [
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 6,
"type": "bool"
}
]
}
],
"name": "Value",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 6,
"type": "bool"
}
]
},
{
"info": 6,
"type": "bool"
},
{
"info": 9,
"type": "{\"cell\":\"([u8;32])\"}",
"sub": [
{
"info": 10,
"type": "([u8;32])",
"sub": [
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "SyncCell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 6,
"type": "bool"
}
]
},
{
"info": 10,
"type": "([u8;32])",
"sub": [
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
],
"name": "Key",
"namespace": "ink_core::storage::key"
},
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
}
},
{
"info": 6,
"type": "u8"
},
{
"info": 9,
"type": "{\"cell\":\"{\\\"cell\\\":\\\"([u8;32])\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"cell\":\"([u8;32])\"}",
"sub": [
{
"info": 10,
"type": "([u8;32])",
"sub": [
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "cell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 9,
"type": "{\"vec\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "vec",
"params": [
{
"info": 6,
"type": "u8"
}
]
}
]
}
]
}
],
"name": "Value",
"namespace": "ink_core::storage::value",
"params": [
{
"info": 9,
"type": "{\"vec\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "vec",
"params": [
{
"info": 6,
"type": "u8"
}
]
}
]
}
]
},
{
"info": 9,
"type": "{\"vec\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "vec",
"params": [
{
"info": 6,
"type": "u8"
}
]
}
]
},
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "Vec",
"params": [
{
"info": 6,
"type": "u8"
}
]
},
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
}
},
{
"info": 9,
"type": "{\"cell\":\"([u8;32])\"}",
"sub": [
{
"info": 10,
"type": "([u8;32])",
"sub": [
{
"info": 12,
"type": "[u8;32]",
"length": 32,
"sub": {
"info": 6,
"type": "u8"
},
"index": 0
}
],
"name": "cell",
"namespace": "ink_core::storage::key"
}
],
"name": "SyncCell",
"namespace": "ink_core::storage::cell::sync_cell",
"params": [
{
"info": 9,
"type": "{\"vec\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "vec",
"params": [
{
"info": 6,
"type": "u8"
}
]
}
]
}
]
},
{
"info": 9,
"type": "{\"access\":\"{\\\"env\\\":\\\"()\\\",\\\"buffer\\\":\\\"{\\\\\\\"elems\\\\\\\":\\\\\\\"Vec<u8>\\\\\\\"}\\\",\\\"has_interacted\\\":\\\"bool\\\",\\\"has_returned_value\\\":\\\"bool\\\"}\"}",
"sub": [
{
"info": 9,
"type": "{\"env\":\"()\",\"buffer\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\",\"has_interacted\":\"bool\",\"has_returned_value\":\"bool\"}",
"sub": [
{
"info": 10,
"type": "()",
"sub": [],
"name": "env",
"params": [
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
}
]
},
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "buffer",
"params": [
{
"info": 6,
"type": "u8"
}
]
},
{
"info": 6,
"type": "bool",
"name": "has_interacted"
},
{
"info": 6,
"type": "bool",
"name": "has_returned_value"
}
],
"name": "access",
"namespace": "ink_core::env2::env_access::mutable",
"params": [
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
}
]
}
],
"name": "EnvAccess",
"namespace": "ink_core::env2::env_access::immutable",
"params": [
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
}
]
},
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
},
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
},
{
"info": 9,
"type": "{\"env\":\"()\",\"buffer\":\"{\\\"elems\\\":\\\"Vec<u8>\\\"}\",\"has_interacted\":\"bool\",\"has_returned_value\":\"bool\"}",
"sub": [
{
"info": 10,
"type": "()",
"sub": [],
"name": "env",
"params": [
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
}
]
},
{
"info": 9,
"type": "{\"elems\":\"Vec<u8>\"}",
"sub": [
{
"info": 11,
"type": "Vec<u8>",
"sub": {
"info": 6,
"type": "u8"
},
"name": "elems"
}
],
"name": "buffer",
"params": [
{
"info": 6,
"type": "u8"
}
]
},
{
"info": 6,
"type": "bool",
"name": "has_interacted"
},
{
"info": 6,
"type": "bool",
"name": "has_returned_value"
}
],
"name": "EnvAccessMut",
"namespace": "ink_core::env2::env_access::mutable",
"params": [
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
}
]
},
{
"info": 10,
"type": "()",
"sub": [],
"name": "PhantomData",
"params": [
{
"info": 9,
"type": "{}",
"sub": [],
"name": "TestEnv",
"namespace": "ink_core::env2::test::accessor",
"params": [
{
"info": 3,
"type": "[]",
"sub": [],
"name": "DefaultSrmlTypes",
"namespace": "ink_core::env2::types"
}
]
}
]
}
]
File diff suppressed because it is too large Load Diff
@@ -1 +0,0 @@
{"name":"Flipper","deploy":{"args":[]},"messages":[{"name":"flip","selector":970692492,"mutates":true,"args":[],"return_type":null},{"name":"get","selector":4266279973,"mutates":false,"args":[],"return_type":"bool"}]}
@@ -1,201 +0,0 @@
{
"registry": {
"strings": [
"Flipper",
"flipper",
"normal",
"value",
"Value",
"ink_core",
"storage",
"cell",
"SyncCell",
"sync_cell",
"Key",
"key",
"flip",
"get"
],
"types": [
{
"id": {
"custom.name": 1,
"custom.namespace": [
2,
3
],
"custom.params": []
},
"def": {
"struct.fields": [
{
"name": 4,
"type": 2
}
]
}
},
{
"id": {
"custom.name": 5,
"custom.namespace": [
6,
7,
4
],
"custom.params": [
3
]
},
"def": {
"struct.fields": [
{
"name": 8,
"type": 4
}
]
}
},
{
"id": "bool",
"def": "builtin"
},
{
"id": {
"custom.name": 9,
"custom.namespace": [
6,
7,
8,
10
],
"custom.params": [
3
]
},
"def": {
"struct.fields": [
{
"name": 8,
"type": 5
}
]
}
},
{
"id": {
"custom.name": 11,
"custom.namespace": [
6,
7,
12
],
"custom.params": []
},
"def": {
"tuple_struct.types": [
6
]
}
},
{
"id": {
"array.len": 32,
"array.type": 7
},
"def": "builtin"
},
{
"id": "u8",
"def": "builtin"
}
]
},
"storage": {
"struct.type": 1,
"struct.fields": [
{
"name": 4,
"layout": {
"struct.type": 2,
"struct.fields": [
{
"name": 8,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"range.len": 1,
"range.elem_type": 3
}
}
]
}
}
]
},
"contract": {
"name": 1,
"deploy": {
"args": [],
"docs": [
"Initializes our state to `false` upon deploying our smart contract."
]
},
"messages": [
{
"name": 13,
"selector": 970692492,
"mutates": true,
"args": [],
"return_type": null,
"docs": [
"Flips the current state of our smart contract."
]
},
{
"name": 14,
"selector": 4266279973,
"mutates": false,
"args": [],
"return_type": 3,
"docs": [
"Returns the current state."
]
}
],
"events": [],
"docs": []
}
}
@@ -1 +0,0 @@
{"name":"SharedVec","deploy":{"args":[]},"messages":[{"name":"push","selector":865577567,"mutates":true,"args":[{"name":"value","type":"i32"}],"return_type":{"Result<T,E>":{"T":[],"E":"u32"}}},{"name":"register","selector":572030971,"mutates":true,"args":[{"name":"mutator","type":"AccountId"},{"name":"begin","type":{"Option<T>":{"T":"u32"}}},{"name":"end","type":{"Option<T>":{"T":"u32"}}}],"return_type":{"Result<T,E>":{"T":[],"E":"u32"}}},{"name":"set","selector":2028185770,"mutates":true,"args":[{"name":"at","type":"u32"},{"name":"to","type":"i32"}],"return_type":{"Result<T,E>":{"T":"i32","E":"u32"}}},{"name":"get","selector":4266279973,"mutates":false,"args":[{"name":"at","type":"u32"}],"return_type":{"Option<T>":{"T":"i32"}}},{"name":"len","selector":1403873684,"mutates":false,"args":[],"return_type":"u32"}]}
@@ -1,935 +0,0 @@
{
"registry": {
"strings": [
"SharedVec",
"shared_vec",
"normal",
"mutators",
"HashMap",
"ink_core",
"storage",
"collections",
"hash_map",
"impls",
"AccountId",
"env",
"srml",
"types",
"Access",
"begin",
"Option",
"None",
"Some",
"end",
"len",
"Value",
"value",
"cell",
"SyncCell",
"sync_cell",
"Key",
"key",
"entries",
"SyncChunk",
"chunk",
"sync_chunk",
"Entry",
"Occupied",
"OccupiedEntry",
"val",
"Removed",
"cells_key",
"vec",
"Vec",
"cells",
"on_deploy",
"push",
"i32",
"Result",
"Ok",
"Err",
"register",
"mutator",
"set",
"at",
"u32",
"to",
"get",
"Mutate",
"Push",
"Register"
],
"types": [
{
"id": {
"custom.name": 1,
"custom.namespace": [
2,
3
],
"custom.params": []
},
"def": {
"struct.fields": [
{
"name": 4,
"type": 2
},
{
"name": 39,
"type": 15
}
]
}
},
{
"id": {
"custom.name": 5,
"custom.namespace": [
6,
7,
8,
9,
10
],
"custom.params": [
3,
6
]
},
"def": {
"struct.fields": [
{
"name": 21,
"type": 9
},
{
"name": 29,
"type": 12
}
]
}
},
{
"id": {
"custom.name": 11,
"custom.namespace": [
6,
12,
13,
14
],
"custom.params": []
},
"def": {
"tuple_struct.types": [
4
]
}
},
{
"id": {
"array.len": 32,
"array.type": 5
},
"def": "builtin"
},
{
"id": "u8",
"def": "builtin"
},
{
"id": {
"custom.name": 15,
"custom.namespace": [
2
],
"custom.params": []
},
"def": {
"struct.fields": [
{
"name": 16,
"type": 7
},
{
"name": 20,
"type": 7
}
]
}
},
{
"id": {
"custom.name": 17,
"custom.namespace": [],
"custom.params": [
8
]
},
"def": {
"enum.variants": [
{
"unit_variant.name": 18
},
{
"tuple_struct_variant.name": 19,
"tuple_struct_variant.types": [
8
]
}
]
}
},
{
"id": "u32",
"def": "builtin"
},
{
"id": {
"custom.name": 22,
"custom.namespace": [
6,
7,
23
],
"custom.params": [
8
]
},
"def": {
"struct.fields": [
{
"name": 24,
"type": 10
}
]
}
},
{
"id": {
"custom.name": 25,
"custom.namespace": [
6,
7,
24,
26
],
"custom.params": [
8
]
},
"def": {
"struct.fields": [
{
"name": 24,
"type": 11
}
]
}
},
{
"id": {
"custom.name": 27,
"custom.namespace": [
6,
7,
28
],
"custom.params": []
},
"def": {
"tuple_struct.types": [
4
]
}
},
{
"id": {
"custom.name": 30,
"custom.namespace": [
6,
7,
31,
32,
31
],
"custom.params": [
13
]
},
"def": {
"struct.fields": [
{
"name": 38,
"type": 11
}
]
}
},
{
"id": {
"custom.name": 33,
"custom.namespace": [
6,
7,
8,
9,
10
],
"custom.params": [
3,
6
]
},
"def": {
"enum.variants": [
{
"tuple_struct_variant.name": 34,
"tuple_struct_variant.types": [
14
]
},
{
"unit_variant.name": 37
}
]
}
},
{
"id": {
"custom.name": 35,
"custom.namespace": [
6,
7,
8,
9,
10
],
"custom.params": [
3,
6
]
},
"def": {
"struct.fields": [
{
"name": 28,
"type": 3
},
{
"name": 36,
"type": 6
}
]
}
},
{
"id": {
"custom.name": 40,
"custom.namespace": [
6,
7,
8,
39,
10
],
"custom.params": [
16
]
},
"def": {
"struct.fields": [
{
"name": 21,
"type": 9
},
{
"name": 41,
"type": 17
}
]
}
},
{
"id": "i32",
"def": "builtin"
},
{
"id": {
"custom.name": 30,
"custom.namespace": [
6,
7,
31,
32,
31
],
"custom.params": [
16
]
},
"def": {
"struct.fields": [
{
"name": 38,
"type": 11
}
]
}
},
{
"id": {
"custom.name": 45,
"custom.namespace": [],
"custom.params": [
19,
8
]
},
"def": {
"enum.variants": [
{
"tuple_struct_variant.name": 46,
"tuple_struct_variant.types": [
19
]
},
{
"tuple_struct_variant.name": 47,
"tuple_struct_variant.types": [
8
]
}
]
}
},
{
"id": [],
"def": "builtin"
},
{
"id": {
"custom.name": 45,
"custom.namespace": [],
"custom.params": [
16,
8
]
},
"def": {
"enum.variants": [
{
"tuple_struct_variant.name": 46,
"tuple_struct_variant.types": [
16
]
},
{
"tuple_struct_variant.name": 47,
"tuple_struct_variant.types": [
8
]
}
]
}
},
{
"id": {
"custom.name": 17,
"custom.namespace": [],
"custom.params": [
16
]
},
"def": {
"enum.variants": [
{
"unit_variant.name": 18
},
{
"tuple_struct_variant.name": 19,
"tuple_struct_variant.types": [
16
]
}
]
}
}
]
},
"storage": {
"struct.type": 1,
"struct.fields": [
{
"name": 4,
"layout": {
"struct.type": 2,
"struct.fields": [
{
"name": 21,
"layout": {
"struct.type": 9,
"struct.fields": [
{
"name": 24,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"range.len": 1,
"range.elem_type": 8
}
}
]
}
},
{
"name": 29,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1
],
"range.len": 4294967295,
"range.elem_type": 13
}
}
]
}
},
{
"name": 39,
"layout": {
"struct.type": 15,
"struct.fields": [
{
"name": 21,
"layout": {
"struct.type": 9,
"struct.fields": [
{
"name": 24,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0
],
"range.len": 1,
"range.elem_type": 8
}
}
]
}
},
{
"name": 41,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1
],
"range.len": 4294967295,
"range.elem_type": 16
}
}
]
}
}
]
},
"contract": {
"name": 1,
"constructors": [
{
"name": 42,
"selector": 0,
"args": [],
"docs": [
"Initializes the value to the initial value."
]
}
],
"messages": [
{
"name": 43,
"selector": 865577567,
"mutates": true,
"args": [
{
"name": 23,
"type": {
"ty": 16,
"display_name": [
44
]
}
}
],
"return_type": {
"ty": 18,
"display_name": [
45
]
},
"docs": [
"Pushes a new value to the shared vector.",
"",
"# Errors",
"",
"- If the caller does not have unlimited access rights."
]
},
{
"name": 48,
"selector": 572030971,
"mutates": true,
"args": [
{
"name": 49,
"type": {
"ty": 3,
"display_name": [
11
]
}
},
{
"name": 16,
"type": {
"ty": 7,
"display_name": [
17
]
}
},
{
"name": 20,
"type": {
"ty": 7,
"display_name": [
17
]
}
}
],
"return_type": {
"ty": 18,
"display_name": [
45
]
},
"docs": [
"Registers a new user with the given access rights.",
"",
"Can also be used to change access rights of an already existing user.",
"",
"# Errors",
"",
"- If the caller does not have unlimited access rights."
]
},
{
"name": 50,
"selector": 2028185770,
"mutates": true,
"args": [
{
"name": 51,
"type": {
"ty": 8,
"display_name": [
52
]
}
},
{
"name": 53,
"type": {
"ty": 16,
"display_name": [
44
]
}
}
],
"return_type": {
"ty": 20,
"display_name": [
45
]
},
"docs": [
"Sets the value at the given position to the given value.",
"",
"Returns the previous value.",
"",
"# Errors",
"",
"- If the given position is out of bounds.",
"- If the caller does not have the required access rights."
]
},
{
"name": 54,
"selector": 4266279973,
"mutates": false,
"args": [
{
"name": 51,
"type": {
"ty": 8,
"display_name": [
52
]
}
}
],
"return_type": {
"ty": 21,
"display_name": [
17
]
},
"docs": [
"Returns the value of the shared vector at the given position",
"or `None` if the access is out of bounds."
]
},
{
"name": 21,
"selector": 1403873684,
"mutates": false,
"args": [],
"return_type": {
"ty": 8,
"display_name": [
52
]
},
"docs": [
"Returns the length of the shared vector."
]
}
],
"events": [
{
"name": 55,
"args": [
{
"name": 51,
"indexed": false,
"type": {
"ty": 8,
"display_name": [
52
]
}
},
{
"name": 23,
"indexed": false,
"type": {
"ty": 16,
"display_name": [
44
]
}
}
],
"docs": [
"Fires whenever a mutator changes the vector."
]
},
{
"name": 56,
"args": [
{
"name": 49,
"indexed": false,
"type": {
"ty": 3,
"display_name": [
11
]
}
},
{
"name": 23,
"indexed": false,
"type": {
"ty": 16,
"display_name": [
44
]
}
}
],
"docs": [
"Fires whenever a mutator pushes the vector successfully."
]
},
{
"name": 57,
"args": [
{
"name": 49,
"indexed": false,
"type": {
"ty": 3,
"display_name": [
11
]
}
},
{
"name": 16,
"indexed": false,
"type": {
"ty": 7,
"display_name": [
17
]
}
},
{
"name": 20,
"indexed": false,
"type": {
"ty": 7,
"display_name": [
17
]
}
}
],
"docs": [
"Fires whenever a new mutator is registered",
"or when a mutators access rights are changed."
]
}
],
"docs": []
}
}
@@ -1,697 +0,0 @@
{
"registry": {
"strings": [
"RustStructures",
"structures",
"normal",
"my_tuple_struct",
"Value",
"ink_core",
"storage",
"value",
"TupleStruct",
"cell",
"SyncCell",
"sync_cell",
"Key",
"key",
"my_struct",
"Struct",
"first",
"seconds",
"my_clike_enum",
"ClikeEnum",
"FirstVariant",
"SecondVariant",
"ThirdVariant",
"my_enum",
"RustEnum",
"NoData",
"TupleVariant",
"StructVariant",
"second",
"my_union",
"Union"
],
"types": [
{
"id": {
"custom.name": 1,
"custom.namespace": [
2,
3
],
"custom.params": []
},
"def": {
"struct.fields": [
{
"name": 4,
"type": 2
},
{
"name": 15,
"type": 9
},
{
"name": 19,
"type": 12
},
{
"name": 24,
"type": 15
},
{
"name": 30,
"type": 18
}
]
}
},
{
"id": {
"custom.name": 5,
"custom.namespace": [
6,
7,
8
],
"custom.params": [
3
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 6
}
]
}
},
{
"id": {
"custom.name": 9,
"custom.namespace": [
2
],
"custom.params": []
},
"def": {
"tuple_struct.types": [
4,
5
]
}
},
{
"id": "u8",
"def": "builtin"
},
{
"id": "u16",
"def": "builtin"
},
{
"id": {
"custom.name": 11,
"custom.namespace": [
6,
7,
10,
12
],
"custom.params": [
3
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 7
}
]
}
},
{
"id": {
"custom.name": 13,
"custom.namespace": [
6,
7,
14
],
"custom.params": []
},
"def": {
"tuple_struct.types": [
8
]
}
},
{
"id": {
"array.len": 32,
"array.type": 4
},
"def": "builtin"
},
{
"id": {
"custom.name": 5,
"custom.namespace": [
6,
7,
8
],
"custom.params": [
10
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 11
}
]
}
},
{
"id": {
"custom.name": 16,
"custom.namespace": [
2
],
"custom.params": []
},
"def": {
"struct.fields": [
{
"name": 17,
"type": 4
},
{
"name": 18,
"type": 5
}
]
}
},
{
"id": {
"custom.name": 11,
"custom.namespace": [
6,
7,
10,
12
],
"custom.params": [
10
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 7
}
]
}
},
{
"id": {
"custom.name": 5,
"custom.namespace": [
6,
7,
8
],
"custom.params": [
13
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 14
}
]
}
},
{
"id": {
"custom.name": 20,
"custom.namespace": [
2
],
"custom.params": []
},
"def": {
"clike_enum.variants": [
{
"name": 21,
"discriminant": 0
},
{
"name": 22,
"discriminant": 1
},
{
"name": 23,
"discriminant": 42
}
]
}
},
{
"id": {
"custom.name": 11,
"custom.namespace": [
6,
7,
10,
12
],
"custom.params": [
13
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 7
}
]
}
},
{
"id": {
"custom.name": 5,
"custom.namespace": [
6,
7,
8
],
"custom.params": [
16
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 17
}
]
}
},
{
"id": {
"custom.name": 25,
"custom.namespace": [
2
],
"custom.params": []
},
"def": {
"enum.variants": [
{
"unit_variant.name": 26
},
{
"tuple_struct_variant.name": 27,
"tuple_struct_variant.types": [
4,
5
]
},
{
"struct_variant.name": 28,
"struct_variant.fields": [
{
"name": 17,
"type": 4
},
{
"name": 29,
"type": 5
}
]
}
]
}
},
{
"id": {
"custom.name": 11,
"custom.namespace": [
6,
7,
10,
12
],
"custom.params": [
16
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 7
}
]
}
},
{
"id": {
"custom.name": 5,
"custom.namespace": [
6,
7,
8
],
"custom.params": [
19
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 20
}
]
}
},
{
"id": {
"custom.name": 31,
"custom.namespace": [
2
],
"custom.params": []
},
"def": {
"union.fields": [
{
"name": 17,
"type": 4
},
{
"name": 29,
"type": 5
}
]
}
},
{
"id": {
"custom.name": 11,
"custom.namespace": [
6,
7,
10,
12
],
"custom.params": [
19
]
},
"def": {
"struct.fields": [
{
"name": 10,
"type": 7
}
]
}
}
]
},
"storage": {
"struct.type": 1,
"struct.fields": [
{
"name": 4,
"layout": {
"struct.type": 2,
"struct.fields": [
{
"name": 10,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"range.len": 1,
"range.elem_type": 3
}
}
]
}
},
{
"name": 15,
"layout": {
"struct.type": 9,
"struct.fields": [
{
"name": 10,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1
],
"range.len": 1,
"range.elem_type": 10
}
}
]
}
},
{
"name": 19,
"layout": {
"struct.type": 12,
"struct.fields": [
{
"name": 10,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2
],
"range.len": 1,
"range.elem_type": 13
}
}
]
}
},
{
"name": 24,
"layout": {
"struct.type": 15,
"struct.fields": [
{
"name": 10,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
3
],
"range.len": 1,
"range.elem_type": 16
}
}
]
}
},
{
"name": 30,
"layout": {
"struct.type": 18,
"struct.fields": [
{
"name": 10,
"layout": {
"range.offset": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
4
],
"range.len": 1,
"range.elem_type": 19
}
}
]
}
}
]
},
"contract": {
"name": 1,
"deploy": {
"args": [],
"docs": []
},
"messages": [],
"events": [],
"docs": []
}
}
@@ -0,0 +1,252 @@
{
"metadataVersion": "0.1.0",
"source": {
"hash": "0x87175ad8e56de12e8bac275483adb1990a61c8b8caca9ddc18f1d5ad3b5dc976",
"language": "ink! 3.0.0",
"compiler": "rustc 1.48.0-nightly"
},
"contract": {
"name": "delegator",
"version": "3.0.0",
"authors": [
"Parity Technologies <admin@parity.io>"
]
},
"spec": {
"constructors": [
{
"args": [
{
"name": "init_value",
"type": {
"displayName": [
"i32"
],
"id": 4
}
},
{
"name": "accumulator_code_hash",
"type": {
"displayName": [
"Hash"
],
"id": 5
}
},
{
"name": "adder_code_hash",
"type": {
"displayName": [
"Hash"
],
"id": 5
}
},
{
"name": "subber_code_hash",
"type": {
"displayName": [
"Hash"
],
"id": 5
}
}
],
"docs": [
" Instantiate a delegator with the given sub-contract codes."
],
"name": [
"new"
],
"selector": "0xd183512b"
}
],
"docs": [],
"events": [],
"messages": [
{
"args": [],
"docs": [
" Returns the accumulator's value."
],
"mutates": false,
"name": [
"get"
],
"payable": false,
"returnType": {
"displayName": [
"i32"
],
"id": 4
},
"selector": "0x1e5ca456"
},
{
"args": [
{
"name": "by",
"type": {
"displayName": [
"i32"
],
"id": 4
}
}
],
"docs": [
" Delegates the call to either `Adder` or `Subber`."
],
"mutates": true,
"name": [
"change"
],
"payable": false,
"returnType": null,
"selector": "0x0af938f2"
},
{
"args": [],
"docs": [
" Switches the delegator."
],
"mutates": true,
"name": [
"switch"
],
"payable": false,
"returnType": null,
"selector": "0x5d37c38d"
}
]
},
"storage": {
"struct": {
"fields": [
{
"layout": {
"enum": {
"dispatch_key": "0x0000000000000000000000000000000000000000000000000000000000000000",
"variants": {
"0": {
"fields": []
},
"1": {
"fields": []
}
}
}
},
"name": "which"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0100000000000000000000000000000000000000000000000000000000000000",
"ty": 1
}
},
"name": "account_id"
}
]
}
},
"name": "accumulator"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0200000000000000000000000000000000000000000000000000000000000000",
"ty": 1
}
},
"name": "account_id"
}
]
}
},
"name": "adder"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0300000000000000000000000000000000000000000000000000000000000000",
"ty": 1
}
},
"name": "account_id"
}
]
}
},
"name": "subber"
}
]
}
},
"types": [
{
"def": {
"composite": {
"fields": [
{
"type": 2
}
]
}
},
"path": [
"ink_env",
"types",
"AccountId"
]
},
{
"def": {
"array": {
"len": 32,
"type": 3
}
}
},
{
"def": {
"primitive": "u8"
}
},
{
"def": {
"primitive": "i32"
}
},
{
"def": {
"composite": {
"fields": [
{
"type": 2
}
]
}
},
"path": [
"ink_env",
"types",
"Hash"
]
}
]
}
Binary file not shown.
@@ -0,0 +1,713 @@
{
"metadataVersion": "0.1.0",
"source": {
"hash": "0x1f1aa9abdcef699d384445b485ed35d890c9a1185510d03d6e1142248187b247",
"language": "ink! 3.0.0",
"compiler": "rustc 1.48.0-nightly"
},
"contract": {
"name": "dns",
"version": "3.0.0",
"authors": [
"Parity Technologies <admin@parity.io>"
]
},
"spec": {
"constructors": [
{
"args": [],
"docs": [
" Creates a new domain name service contract."
],
"name": [
"new"
],
"selector": "0xd183512b"
}
],
"docs": [],
"events": [
{
"args": [
{
"docs": [],
"indexed": true,
"name": "name",
"type": {
"displayName": [
"Hash"
],
"id": 4
}
},
{
"docs": [],
"indexed": true,
"name": "from",
"type": {
"displayName": [
"AccountId"
],
"id": 9
}
}
],
"docs": [
" Emitted whenever a new name is being registered."
],
"name": "Register"
},
{
"args": [
{
"docs": [],
"indexed": true,
"name": "name",
"type": {
"displayName": [
"Hash"
],
"id": 4
}
},
{
"docs": [],
"indexed": false,
"name": "from",
"type": {
"displayName": [
"AccountId"
],
"id": 9
}
},
{
"docs": [],
"indexed": true,
"name": "old_address",
"type": {
"displayName": [
"Option"
],
"id": 13
}
},
{
"docs": [],
"indexed": true,
"name": "new_address",
"type": {
"displayName": [
"AccountId"
],
"id": 9
}
}
],
"docs": [
" Emitted whenever an address changes."
],
"name": "SetAddress"
},
{
"args": [
{
"docs": [],
"indexed": true,
"name": "name",
"type": {
"displayName": [
"Hash"
],
"id": 4
}
},
{
"docs": [],
"indexed": false,
"name": "from",
"type": {
"displayName": [
"AccountId"
],
"id": 9
}
},
{
"docs": [],
"indexed": true,
"name": "old_owner",
"type": {
"displayName": [
"Option"
],
"id": 13
}
},
{
"docs": [],
"indexed": true,
"name": "new_owner",
"type": {
"displayName": [
"AccountId"
],
"id": 9
}
}
],
"docs": [
" Emitted whenver a name is being transferred."
],
"name": "Transfer"
}
],
"messages": [
{
"args": [
{
"name": "name",
"type": {
"displayName": [
"Hash"
],
"id": 4
}
}
],
"docs": [
" Register specific name with caller as owner."
],
"mutates": true,
"name": [
"register"
],
"payable": false,
"returnType": {
"displayName": [
"Result"
],
"id": 10
},
"selector": "0x7fb0aded"
},
{
"args": [
{
"name": "name",
"type": {
"displayName": [
"Hash"
],
"id": 4
}
},
{
"name": "new_address",
"type": {
"displayName": [
"AccountId"
],
"id": 9
}
}
],
"docs": [
" Set address for specific name."
],
"mutates": true,
"name": [
"set_address"
],
"payable": false,
"returnType": {
"displayName": [
"Result"
],
"id": 10
},
"selector": "0x220ac6e3"
},
{
"args": [
{
"name": "name",
"type": {
"displayName": [
"Hash"
],
"id": 4
}
},
{
"name": "to",
"type": {
"displayName": [
"AccountId"
],
"id": 9
}
}
],
"docs": [
" Transfer owner to another address."
],
"mutates": true,
"name": [
"transfer"
],
"payable": false,
"returnType": {
"displayName": [
"Result"
],
"id": 10
},
"selector": "0xfae3a09d"
},
{
"args": [
{
"name": "name",
"type": {
"displayName": [
"Hash"
],
"id": 4
}
}
],
"docs": [
" Get address for specific name."
],
"mutates": false,
"name": [
"get_address"
],
"payable": false,
"returnType": {
"displayName": [
"AccountId"
],
"id": 9
},
"selector": "0xb9ee7664"
}
]
},
"storage": {
"struct": {
"fields": [
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0000000000000000000000000000000000000000000000000000000000000000",
"ty": 1
}
},
"name": "header"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0100000000000000000000000000000000000000000000000000000000000000",
"ty": 2
}
},
"name": "len"
},
{
"layout": {
"array": {
"cells_per_elem": 1,
"layout": {
"cell": {
"key": "0x0100000001000000000000000000000000000000000000000000000000000000",
"ty": 3
}
},
"len": 4294967295,
"offset": "0x0200000000000000000000000000000000000000000000000000000000000000"
}
},
"name": "elems"
}
]
}
},
"name": "entries"
}
]
}
},
"name": "keys"
},
{
"layout": {
"hash": {
"layout": {
"cell": {
"key": "0x0200000001000000000000000000000000000000000000000000000000000000",
"ty": 8
}
},
"offset": "0x0100000001000000000000000000000000000000000000000000000000000000",
"strategy": {
"hasher": "Blake2x256",
"postfix": "",
"prefix": "0x696e6b20686173686d6170"
}
}
},
"name": "values"
}
]
}
},
"name": "name_to_address"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0200000001000000000000000000000000000000000000000000000000000000",
"ty": 1
}
},
"name": "header"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0300000001000000000000000000000000000000000000000000000000000000",
"ty": 2
}
},
"name": "len"
},
{
"layout": {
"array": {
"cells_per_elem": 1,
"layout": {
"cell": {
"key": "0x0300000002000000000000000000000000000000000000000000000000000000",
"ty": 3
}
},
"len": 4294967295,
"offset": "0x0400000001000000000000000000000000000000000000000000000000000000"
}
},
"name": "elems"
}
]
}
},
"name": "entries"
}
]
}
},
"name": "keys"
},
{
"layout": {
"hash": {
"layout": {
"cell": {
"key": "0x0400000002000000000000000000000000000000000000000000000000000000",
"ty": 8
}
},
"offset": "0x0300000002000000000000000000000000000000000000000000000000000000",
"strategy": {
"hasher": "Blake2x256",
"postfix": "",
"prefix": "0x696e6b20686173686d6170"
}
}
},
"name": "values"
}
]
}
},
"name": "name_to_owner"
},
{
"layout": {
"cell": {
"key": "0x0400000002000000000000000000000000000000000000000000000000000000",
"ty": 9
}
},
"name": "default_address"
}
]
}
},
"types": [
{
"def": {
"composite": {
"fields": [
{
"name": "last_vacant",
"type": 2
},
{
"name": "len",
"type": 2
},
{
"name": "len_entries",
"type": 2
}
]
}
},
"path": [
"ink_storage",
"collections",
"stash",
"Header"
]
},
{
"def": {
"primitive": "u32"
}
},
{
"def": {
"variant": {
"variants": [
{
"fields": [
{
"type": 7
}
],
"name": "Vacant"
},
{
"fields": [
{
"type": 4
}
],
"name": "Occupied"
}
]
}
},
"params": [
4
],
"path": [
"ink_storage",
"collections",
"stash",
"Entry"
]
},
{
"def": {
"composite": {
"fields": [
{
"type": 5
}
]
}
},
"path": [
"ink_env",
"types",
"Hash"
]
},
{
"def": {
"array": {
"len": 32,
"type": 6
}
}
},
{
"def": {
"primitive": "u8"
}
},
{
"def": {
"composite": {
"fields": [
{
"name": "next",
"type": 2
},
{
"name": "prev",
"type": 2
}
]
}
},
"path": [
"ink_storage",
"collections",
"stash",
"VacantEntry"
]
},
{
"def": {
"composite": {
"fields": [
{
"name": "value",
"type": 9
},
{
"name": "key_index",
"type": 2
}
]
}
},
"params": [
9
],
"path": [
"ink_storage",
"collections",
"hashmap",
"ValueEntry"
]
},
{
"def": {
"composite": {
"fields": [
{
"type": 5
}
]
}
},
"path": [
"ink_env",
"types",
"AccountId"
]
},
{
"def": {
"variant": {
"variants": [
{
"fields": [
{
"type": 11
}
],
"name": "Ok"
},
{
"fields": [
{
"type": 12
}
],
"name": "Err"
}
]
}
},
"params": [
11,
12
],
"path": [
"Result"
]
},
{
"def": {
"tuple": []
}
},
{
"def": {
"variant": {
"variants": [
{
"discriminant": 0,
"name": "NameAlreadyExists"
},
{
"discriminant": 1,
"name": "CallerIsNotOwner"
}
]
}
},
"path": [
"dns",
"dns",
"Error"
]
},
{
"def": {
"variant": {
"variants": [
{
"name": "None"
},
{
"fields": [
{
"type": 9
}
],
"name": "Some"
}
]
}
},
"params": [
9
],
"path": [
"Option"
]
}
]
}
Binary file not shown.
@@ -0,0 +1,704 @@
{
"metadataVersion": "0.1.0",
"source": {
"hash": "0xae28fa9f075f218d559a36f720b0704b2c09326590fe19d7d76a7eaa40d079b3",
"language": "ink! 3.0.0",
"compiler": "rustc 1.48.0-nightly"
},
"contract": {
"name": "erc20",
"version": "3.0.0",
"authors": [
"Parity Technologies <admin@parity.io>"
]
},
"spec": {
"constructors": [
{
"args": [
{
"name": "initial_supply",
"type": {
"displayName": [
"Balance"
],
"id": 1
}
}
],
"docs": [],
"name": [
"new"
],
"selector": "0xd183512b"
}
],
"docs": [],
"events": [
{
"args": [
{
"docs": [],
"indexed": true,
"name": "from",
"type": {
"displayName": [
"Option"
],
"id": 13
}
},
{
"docs": [],
"indexed": true,
"name": "to",
"type": {
"displayName": [
"Option"
],
"id": 13
}
},
{
"docs": [],
"indexed": true,
"name": "value",
"type": {
"displayName": [
"Balance"
],
"id": 1
}
}
],
"docs": [],
"name": "Transfer"
},
{
"args": [
{
"docs": [],
"indexed": true,
"name": "owner",
"type": {
"displayName": [
"AccountId"
],
"id": 5
}
},
{
"docs": [],
"indexed": true,
"name": "spender",
"type": {
"displayName": [
"AccountId"
],
"id": 5
}
},
{
"docs": [],
"indexed": true,
"name": "value",
"type": {
"displayName": [
"Balance"
],
"id": 1
}
}
],
"docs": [],
"name": "Approval"
}
],
"messages": [
{
"args": [],
"docs": [],
"mutates": false,
"name": [
"total_supply"
],
"payable": false,
"returnType": {
"displayName": [
"Balance"
],
"id": 1
},
"selector": "0xdcb736b5"
},
{
"args": [
{
"name": "owner",
"type": {
"displayName": [
"AccountId"
],
"id": 5
}
}
],
"docs": [],
"mutates": false,
"name": [
"balance_of"
],
"payable": false,
"returnType": {
"displayName": [
"Balance"
],
"id": 1
},
"selector": "0x56e929b2"
},
{
"args": [
{
"name": "owner",
"type": {
"displayName": [
"AccountId"
],
"id": 5
}
},
{
"name": "spender",
"type": {
"displayName": [
"AccountId"
],
"id": 5
}
}
],
"docs": [],
"mutates": false,
"name": [
"allowance"
],
"payable": false,
"returnType": {
"displayName": [
"Balance"
],
"id": 1
},
"selector": "0xf3cfff66"
},
{
"args": [
{
"name": "to",
"type": {
"displayName": [
"AccountId"
],
"id": 5
}
},
{
"name": "value",
"type": {
"displayName": [
"Balance"
],
"id": 1
}
}
],
"docs": [],
"mutates": true,
"name": [
"transfer"
],
"payable": false,
"returnType": {
"displayName": [
"bool"
],
"id": 12
},
"selector": "0xfae3a09d"
},
{
"args": [
{
"name": "spender",
"type": {
"displayName": [
"AccountId"
],
"id": 5
}
},
{
"name": "value",
"type": {
"displayName": [
"Balance"
],
"id": 1
}
}
],
"docs": [],
"mutates": true,
"name": [
"approve"
],
"payable": false,
"returnType": {
"displayName": [
"bool"
],
"id": 12
},
"selector": "0x03d0e114"
},
{
"args": [
{
"name": "from",
"type": {
"displayName": [
"AccountId"
],
"id": 5
}
},
{
"name": "to",
"type": {
"displayName": [
"AccountId"
],
"id": 5
}
},
{
"name": "value",
"type": {
"displayName": [
"Balance"
],
"id": 1
}
}
],
"docs": [],
"mutates": true,
"name": [
"transfer_from"
],
"payable": false,
"returnType": {
"displayName": [
"bool"
],
"id": 12
},
"selector": "0xfcfb2ccd"
}
]
},
"storage": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0000000000000000000000000000000000000000000000000000000000000000",
"ty": 1
}
},
"name": "total_supply"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0100000000000000000000000000000000000000000000000000000000000000",
"ty": 2
}
},
"name": "header"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0200000000000000000000000000000000000000000000000000000000000000",
"ty": 3
}
},
"name": "len"
},
{
"layout": {
"array": {
"cells_per_elem": 1,
"layout": {
"cell": {
"key": "0x0200000001000000000000000000000000000000000000000000000000000000",
"ty": 4
}
},
"len": 4294967295,
"offset": "0x0300000000000000000000000000000000000000000000000000000000000000"
}
},
"name": "elems"
}
]
}
},
"name": "entries"
}
]
}
},
"name": "keys"
},
{
"layout": {
"hash": {
"layout": {
"cell": {
"key": "0x0300000001000000000000000000000000000000000000000000000000000000",
"ty": 9
}
},
"offset": "0x0200000001000000000000000000000000000000000000000000000000000000",
"strategy": {
"hasher": "Blake2x256",
"postfix": "",
"prefix": "0x696e6b20686173686d6170"
}
}
},
"name": "values"
}
]
}
},
"name": "balances"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0300000001000000000000000000000000000000000000000000000000000000",
"ty": 2
}
},
"name": "header"
},
{
"layout": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0400000001000000000000000000000000000000000000000000000000000000",
"ty": 3
}
},
"name": "len"
},
{
"layout": {
"array": {
"cells_per_elem": 1,
"layout": {
"cell": {
"key": "0x0400000002000000000000000000000000000000000000000000000000000000",
"ty": 10
}
},
"len": 4294967295,
"offset": "0x0500000001000000000000000000000000000000000000000000000000000000"
}
},
"name": "elems"
}
]
}
},
"name": "entries"
}
]
}
},
"name": "keys"
},
{
"layout": {
"hash": {
"layout": {
"cell": {
"key": "0x0500000002000000000000000000000000000000000000000000000000000000",
"ty": 9
}
},
"offset": "0x0400000002000000000000000000000000000000000000000000000000000000",
"strategy": {
"hasher": "Blake2x256",
"postfix": "",
"prefix": "0x696e6b20686173686d6170"
}
}
},
"name": "values"
}
]
}
},
"name": "allowances"
}
]
}
},
"types": [
{
"def": {
"primitive": "u128"
}
},
{
"def": {
"composite": {
"fields": [
{
"name": "last_vacant",
"type": 3
},
{
"name": "len",
"type": 3
},
{
"name": "len_entries",
"type": 3
}
]
}
},
"path": [
"ink_storage",
"collections",
"stash",
"Header"
]
},
{
"def": {
"primitive": "u32"
}
},
{
"def": {
"variant": {
"variants": [
{
"fields": [
{
"type": 8
}
],
"name": "Vacant"
},
{
"fields": [
{
"type": 5
}
],
"name": "Occupied"
}
]
}
},
"params": [
5
],
"path": [
"ink_storage",
"collections",
"stash",
"Entry"
]
},
{
"def": {
"composite": {
"fields": [
{
"type": 6
}
]
}
},
"path": [
"ink_env",
"types",
"AccountId"
]
},
{
"def": {
"array": {
"len": 32,
"type": 7
}
}
},
{
"def": {
"primitive": "u8"
}
},
{
"def": {
"composite": {
"fields": [
{
"name": "next",
"type": 3
},
{
"name": "prev",
"type": 3
}
]
}
},
"path": [
"ink_storage",
"collections",
"stash",
"VacantEntry"
]
},
{
"def": {
"composite": {
"fields": [
{
"name": "value",
"type": 1
},
{
"name": "key_index",
"type": 3
}
]
}
},
"params": [
1
],
"path": [
"ink_storage",
"collections",
"hashmap",
"ValueEntry"
]
},
{
"def": {
"variant": {
"variants": [
{
"fields": [
{
"type": 8
}
],
"name": "Vacant"
},
{
"fields": [
{
"type": 11
}
],
"name": "Occupied"
}
]
}
},
"params": [
11
],
"path": [
"ink_storage",
"collections",
"stash",
"Entry"
]
},
{
"def": {
"tuple": [
5,
5
]
}
},
{
"def": {
"primitive": "bool"
}
},
{
"def": {
"variant": {
"variants": [
{
"name": "None"
},
{
"fields": [
{
"type": 5
}
],
"name": "Some"
}
]
}
},
"params": [
5
],
"path": [
"Option"
]
}
]
}
Binary file not shown.
File diff suppressed because it is too large Load Diff
Binary file not shown.
@@ -0,0 +1,106 @@
{
"metadataVersion": "0.1.0",
"source": {
"hash": "0x98f9fc872ae9db158c8f695018a1b3c5a2fb863f9bed7c83ec039f05ea67fc57",
"language": "ink! 3.0.0",
"compiler": "rustc 1.48.0-nightly"
},
"contract": {
"name": "flipper",
"version": "3.0.0",
"authors": [
"Parity Technologies <admin@parity.io>"
]
},
"spec": {
"constructors": [
{
"args": [
{
"name": "init_value",
"type": {
"displayName": [
"bool"
],
"id": 1
}
}
],
"docs": [
" Creates a new flipper smart contract initialized with the given value."
],
"name": [
"new"
],
"selector": "0xd183512b"
},
{
"args": [],
"docs": [
" Creates a new flipper smart contract initialized to `false`."
],
"name": [
"default"
],
"selector": "0x6a3712e2"
}
],
"docs": [],
"events": [],
"messages": [
{
"args": [],
"docs": [
" Flips the current value of the Flipper's bool."
],
"mutates": true,
"name": [
"flip"
],
"payable": false,
"returnType": null,
"selector": "0xc096a5f3"
},
{
"args": [],
"docs": [
" Returns the current value of the Flipper's bool."
],
"mutates": false,
"name": [
"get"
],
"payable": false,
"returnType": {
"displayName": [
"bool"
],
"id": 1
},
"selector": "0x1e5ca456"
}
]
},
"storage": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0000000000000000000000000000000000000000000000000000000000000000",
"ty": 1
}
},
"name": "value"
}
]
}
},
"types": [
{
"def": {
"primitive": "bool"
}
}
]
}
Binary file not shown.
@@ -1,233 +1,108 @@
{
"registry": {
"strings": [
"Incrementer",
"incrementer",
"normal",
"value",
"Value",
"ink_core",
"storage",
"cell",
"SyncCell",
"sync_cell",
"Key",
"key",
"on_deploy",
"init_value",
"u32",
"inc",
"by",
"get",
"compare",
"with",
"bool"
"metadataVersion": "0.1.0",
"source": {
"hash": "0xafe9cfb918e19fc701470017985ab0324017c66dbcfb13cb3ceca39e68cddd86",
"language": "ink! 3.0.0",
"compiler": "rustc 1.48.0-nightly"
},
"contract": {
"name": "incrementer",
"version": "3.0.0",
"authors": [
"Parity Technologies <admin@parity.io>"
]
},
"spec": {
"constructors": [
{
"args": [
{
"name": "init_value",
"type": {
"displayName": [
"i32"
],
"id": 1
}
}
],
"docs": [],
"name": [
"new"
],
"selector": "0xd183512b"
},
{
"args": [],
"docs": [],
"name": [
"default"
],
"selector": "0x6a3712e2"
}
],
"types": [
"docs": [],
"events": [],
"messages": [
{
"id": {
"custom.name": 1,
"custom.namespace": [
2,
3
],
"custom.params": []
},
"def": {
"struct.fields": [
{
"name": 4,
"type": 2
"args": [
{
"name": "by",
"type": {
"displayName": [
"i32"
],
"id": 1
}
]
}
}
],
"docs": [],
"mutates": true,
"name": [
"inc"
],
"payable": false,
"returnType": null,
"selector": "0x2fb8d143"
},
{
"id": {
"custom.name": 5,
"custom.namespace": [
6,
7,
4
"args": [],
"docs": [],
"mutates": false,
"name": [
"get"
],
"payable": false,
"returnType": {
"displayName": [
"i32"
],
"custom.params": [
3
]
"id": 1
},
"def": {
"struct.fields": [
{
"name": 8,
"type": 4
}
]
}
},
{
"id": "u32",
"def": "builtin"
},
{
"id": {
"custom.name": 9,
"custom.namespace": [
6,
7,
8,
10
],
"custom.params": [
3
]
},
"def": {
"struct.fields": [
{
"name": 8,
"type": 5
}
]
}
},
{
"id": {
"custom.name": 11,
"custom.namespace": [
6,
7,
12
],
"custom.params": []
},
"def": {
"tuple_struct.types": [
6
]
}
},
{
"id": {
"array.len": 32,
"array.type": 7
},
"def": "builtin"
},
{
"id": "u8",
"def": "builtin"
},
{
"id": "bool",
"def": "builtin"
"selector": "0x1e5ca456"
}
]
},
"storage": {
"struct.type": 1,
"struct.fields": [
{
"name": 4,
"layout": {
"struct.type": 2,
"struct.fields": [
{
"name": 8,
"layout": {
"range.offset": "0x0000000000000000000000000000000000000000000000000000000000000000",
"range.len": 1,
"range.elem_type": 3
}
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0000000000000000000000000000000000000000000000000000000000000000",
"ty": 1
}
]
},
"name": "value"
}
}
]
]
}
},
"contract": {
"name": 1,
"constructors": [
{
"name": 13,
"selector": "[\"0x00\",\"0x00\",\"0x00\",\"0x00\"]",
"args": [
{
"name": 14,
"type": {
"ty": 3,
"display_name": [
15
]
}
}
],
"docs": [
"Initializes the value to the initial value."
]
"types": [
{
"def": {
"primitive": "i32"
}
],
"messages": [
{
"name": 16,
"selector": "[\"0x0F\",\"0x59\",\"0xD0\",\"0xE7\"]",
"mutates": true,
"args": [
{
"name": 17,
"type": {
"ty": 3,
"display_name": [
15
]
}
}
],
"return_type": null,
"docs": [
"Flips the current state of our smart contract."
]
},
{
"name": 18,
"selector": "[\"0xFE\",\"0x4A\",\"0x44\",\"0x25\"]",
"mutates": false,
"args": [],
"return_type": {
"ty": 3,
"display_name": [
15
]
},
"docs": [
"Returns the current state."
]
},
{
"name": 19,
"selector": "[\"0x15\",\"0xB0\",\"0xC5\",\"0x0C\"]",
"mutates": false,
"args": [
{
"name": 20,
"type": {
"ty": 3,
"display_name": [
15
]
}
}
],
"return_type": {
"ty": 8,
"display_name": [
21
]
},
"docs": [
"Returns `true` if the internal value is greater than or equal to the provided value."
]
}
],
"events": [],
"docs": []
}
}
]
}
@@ -0,0 +1,10 @@
// Copyright 2017-2020 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { default as delegator } from './delegator.json';
export { default as dns } from './dns.json';
export { default as erc20 } from './erc20.json';
export { default as erc721 } from './erc721.json';
export { default as flipper } from './flipper.json';
export { default as incrementer } from './incrementer.json';
export { default as multisigPlain } from './multisig_plain.json';
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,103 @@
{
"metadataVersion": "0.1.0",
"source": {
"hash": "0x4c7e27282d0877aef2390dd50254a0fea52de5b61bc1104b41c791044f47133c",
"language": "ink! 3.0.0",
"compiler": "rustc 1.48.0-nightly"
},
"contract": {
"name": "flipper",
"version": "3.0.0",
"authors": [
"Parity Technologies <admin@parity.io>"
]
},
"spec": {
"constructors": [
{
"args": [],
"docs": [
" Creates a new flipper smart contract initialized to `false`."
],
"name": [
"default"
],
"selector": "0x6a3712e2"
},
{
"args": [
{
"name": "init_value",
"type": {
"displayName": [
"bool"
],
"id": 1
}
}
],
"docs": [],
"name": [
"Flip",
"new"
],
"selector": "0x818482e7"
}
],
"docs": [],
"events": [],
"messages": [
{
"args": [],
"docs": [],
"mutates": true,
"name": [
"Flip",
"flip"
],
"payable": false,
"returnType": null,
"selector": "0xad931d5f"
},
{
"args": [],
"docs": [],
"mutates": false,
"name": [
"Flip",
"get"
],
"payable": false,
"returnType": {
"displayName": [
"bool"
],
"id": 1
},
"selector": "0x6b3549bc"
}
]
},
"storage": {
"struct": {
"fields": [
{
"layout": {
"cell": {
"key": "0x0000000000000000000000000000000000000000000000000000000000000000",
"ty": 1
}
},
"name": "value"
}
]
}
},
"types": [
{
"def": {
"primitive": "bool"
}
}
]
}