@@ -151,6 +151,25 @@ persisting the current values for sender and value.
151151
152152` result ` ** i32** Returns 1 or 0 depending on if the VM trapped on the message or not
153153
154+ ## callStatic
155+
156+ Sends a message with arbitrary data to a given address path, but disallow state
157+ modifications. This includes ` log ` , ` create ` , ` selfdestruct ` and ` call ` with a non-zero
158+ value.
159+
160+ ** Parameters**
161+
162+ - ` gas ` ** i64** the gas limit
163+ - ` addressOffset ` ** i32ptr** the memory offset to load the address from (` address ` )
164+ - ` dataOffset ` ** i32ptr** the memory offset to load data from (` bytes ` )
165+ - ` dataLength ` ** i32** the length of data
166+ - ` resultOffset ` ** i32ptr** the memory offset to store the result data at (` bytes ` )
167+ - ` resultLength ` ** i32** the maximal length of result data
168+
169+ ** Returns**
170+
171+ ` result ` ** i32** Returns 1 or 0 depending on if the VM trapped on the message or not
172+
154173## storageStore
155174
156175Store 256-bit a value in memory to persistent storage
@@ -252,6 +271,8 @@ Creates a new contract with a given value.
252271- ` length ` ** i32** the data length
253272- ` resultOffset ` ** i32ptr** the memory offset to write the new contract address to (` address ` )
254273
274+ * Note* : ` create ` will clear the return buffer in case of success or may fill it with data coming from ` revert ` .
275+
255276** Returns**
256277
257278` result ` ** i32** Returns 1 or 0 depending on if the VM trapped on the message or not
@@ -390,6 +411,53 @@ Set the returning output data for the execution.
390411
391412* nothing*
392413
414+ ## revert
415+
416+ Set the returning output data for the execution.
417+
418+ * Note* : multiple invocations will overwrite the previous data.
419+
420+ ** Parameters**
421+
422+ - ` dataOffset ` ** i32ptr** the memory offset of the output data (` bytes ` )
423+ - ` length ` ** i32** the length of the output data
424+
425+ ** Returns**
426+
427+ * nothing*
428+
429+ ## getReturnDataSize
430+
431+ Get size of current return data buffer to memory. This contains the return data
432+ from the last executed ` call ` , ` callCode ` , ` callDelegate ` , ` callStatic ` or ` create ` .
433+
434+ * Note* : ` create ` only fills the return data buffer in case of a failure.
435+
436+ ** Parameters**
437+
438+ * none*
439+
440+ ** Returns**
441+
442+ ` dataSize ` ** i32**
443+
444+ ## returnDataCopy
445+
446+ Copies the current return data buffer to memory. This contains the return data
447+ from last executed ` call ` , ` callCode ` , ` callDelegate ` , ` callStatic ` or ` create ` .
448+
449+ * Note* : ` create ` only fills the return data buffer in case of a failure.
450+
451+ ** Parameters**
452+
453+ - ` resultOffset ` ** i32ptr** the memory offset to load data into (` bytes ` )
454+ - ` dataOffset ` ** i32** the offset in the return data
455+ - ` length ` ** i32** the length of data to copy
456+
457+ ** Returns**
458+
459+ * nothing*
460+
393461## selfDestruct
394462
395463Mark account for later deletion and give the remaining balance to the specified
0 commit comments