diff options
-rw-r--r-- | docs/types.rst | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/docs/types.rst b/docs/types.rst index 1d027d23..996383a9 100644 --- a/docs/types.rst +++ b/docs/types.rst @@ -95,7 +95,7 @@ the function ``call`` is provided which takes an arbitrary number of arguments o nameReg.call("register", "MyName"); nameReg.call(bytes4(sha3("fun(uint256)")), a); -``call`` returns a boolean indicating whether the invoked function terminated (``true``) or caused an EVM exception (`false:code:`). It is not possible to access the actual data returned (for this we would need to know the encoding and size in advance). +``call`` returns a boolean indicating whether the invoked function terminated (``true``) or caused an EVM exception (``false``). It is not possible to access the actual data returned (for this we would need to know the encoding and size in advance). In a similar way, the function ``delegatecall`` can be used: The difference is that only the code of the given address is used, all other aspects (storage, balance, ...) are taken from the current contract. The purpose of ``delegatecall`` is to use library code which is stored in another contract. The user has to ensure that the layout of storage in both contracts is suitable for delegatecall to be used. Prior to homestead, only a limited variant called ``callcode`` was available that did not provide access to the original ``msg.sender`` and ``msg.value`` values. |