diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2021-02-12 13:36:30 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2021-02-12 13:36:30 -0300 |
commit | bc970005ce2e258e29a5c315ea4e49f76a66586e (patch) | |
tree | 5575ca66aeddad2036df74f38fa2bed217c2801e /manual | |
parent | f79ccdca9bbe9d486d91a44a4464b99ce38de0e2 (diff) | |
download | lua-bc970005ce2e258e29a5c315ea4e49f76a66586e.tar.gz lua-bc970005ce2e258e29a5c315ea4e49f76a66586e.tar.bz2 lua-bc970005ce2e258e29a5c315ea4e49f76a66586e.zip |
'__close' methods can yield in the return of a C function
When, inside a coroutine, a C function with to-be-closed slots return,
the corresponding metamethods can yield. ('__close' metamethods called
through 'lua_closeslot' still cannot yield, as there is no continuation
to go when resuming.)
Diffstat (limited to 'manual')
-rw-r--r-- | manual/manual.of | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/manual/manual.of b/manual/manual.of index 89069281..e7040b2b 100644 --- a/manual/manual.of +++ b/manual/manual.of | |||
@@ -3102,6 +3102,9 @@ Close the to-be-closed slot at the given index and set its value to @nil. | |||
3102 | The index must be the last index previously marked to be closed | 3102 | The index must be the last index previously marked to be closed |
3103 | @see{lua_toclose} that is still active (that is, not closed yet). | 3103 | @see{lua_toclose} that is still active (that is, not closed yet). |
3104 | 3104 | ||
3105 | A @Lid{__close} metamethod cannot yield | ||
3106 | when called through this function. | ||
3107 | |||
3105 | (Exceptionally, this function was introduced in release 5.4.3. | 3108 | (Exceptionally, this function was introduced in release 5.4.3. |
3106 | It is not present in previous 5.4 releases.) | 3109 | It is not present in previous 5.4 releases.) |
3107 | 3110 | ||