1
+ const U64_MAX = 2n ** 64n - 1n
2
+ const EVICTED_REGISTER = U64_MAX - 1n
3
+
1
4
export function signerAccountId ( ) {
2
5
env . signer_account_id ( 0 )
3
6
return env . read_register ( 0 )
@@ -88,7 +91,7 @@ export function jsvmArgs() {
88
91
}
89
92
90
93
export function jsvmStorageWrite ( key , value ) {
91
- let exist = env . jsvm_storage_write ( key , value , 0 )
94
+ let exist = env . jsvm_storage_write ( key , value , EVICTED_REGISTER )
92
95
if ( exist === 1n ) {
93
96
return true
94
97
}
@@ -104,7 +107,7 @@ export function jsvmStorageRead(key) {
104
107
}
105
108
106
109
export function jsvmStorageRemove ( key ) {
107
- let exist = env . jsvm_storage_remove ( key , 0 )
110
+ let exist = env . jsvm_storage_remove ( key , EVICTED_REGISTER )
108
111
if ( exist === 1n ) {
109
112
return true
110
113
}
@@ -122,4 +125,8 @@ export function jsvmStorageHasKey(key) {
122
125
export function jsvmCall ( contractName , method , args ) {
123
126
env . jsvm_call ( contractName , method , JSON . stringify ( args ) , 0 )
124
127
return JSON . parse ( env . read_register ( 0 ) || 'null' )
128
+ }
129
+
130
+ export function storageGetEvicted ( ) {
131
+ return env . read_register ( EVICTED_REGISTER )
125
132
}
0 commit comments