Difference between revisions of "Xpcall"

From GiderosMobile
(Created page with "__NOTOC__ '''Available since:''' Gideros 2011.6<br/> === Description === `pcall` function f with new error handler err. The operations related to coroutines comprise a sub-lib...")
 
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
 
'''Available since:''' Gideros 2011.6<br/>
 
'''Available since:''' Gideros 2011.6<br/>
 +
'''Class:''' [[(global)]]<br/>
 +
 
=== Description ===
 
=== Description ===
`pcall` function f with new error handler err.
+
'''pcall''' function ''f'' with a new error handler ''err''.
 +
<syntaxhighlight lang="lua">
 +
xpcall(f,err)
 +
</syntaxhighlight>
 +
 
 
The operations related to coroutines comprise a sub-library of the basic library and come inside the table coroutine.
 
The operations related to coroutines comprise a sub-library of the basic library and come inside the table coroutine.
<source lang="lua">
+
 
= xpcall(ferr,)
+
=== Parameters ===
</source>
+
'''f''': (function) pcall function<br/>
'''f:''' (function) pcall function ''''''<br/>
+
'''err''': (string) error message<br/>
'''err:''' (string) error message ''''''<br/>
+
 
 +
=== Example ===
 +
<syntaxhighlight lang="lua">
 +
-- @oleg ;-)
 +
 
 +
function f ()
 +
return "a" + 2
 +
end -- f
 +
 
 +
function err(x)
 +
print ("err called", x)
 +
return "oh no!"
 +
end -- err
 +
 
 +
print(xpcall(f, err))
 +
-- err called code.lua:512: attempt to perform arithmetic (add) on string and number
 +
-- false oh no!
 +
</syntaxhighlight>
 +
 
 +
{{(global)}}

Latest revision as of 12:06, 5 October 2023

Available since: Gideros 2011.6
Class: (global)

Description

pcall function f with a new error handler err.

xpcall(f,err)

The operations related to coroutines comprise a sub-library of the basic library and come inside the table coroutine.

Parameters

f: (function) pcall function
err: (string) error message

Example

-- @oleg ;-)

function f ()
	return "a" + 2
end -- f

function err(x)
	print ("err called", x)
	return "oh no!"
end -- err

print(xpcall(f, err))
-- err called	code.lua:512: attempt to perform arithmetic (add) on string and number
-- false	oh no!