executeChannelProgram

Undocumented in source. Be warned that the author may not have intended to support it.
@SILdoc(`Executes a channel program If this function returns 0 the channel program was successfully loaded and ran without failing. Note that individual commands the channel program ran may have failed and the channel program is responsible for reporting such errors through outnvl if they are important. This method may also return: 22 The program contains syntax errors, or an invalid memory or time limit was given. No part of the channel program was executed. If caused by syntax errors, 'outnvl' contains information about the errors. 44 The program was executed, but encountered a runtime error, such as calling a function with incorrect arguments, invoking the error() function directly, failing an assert() command, etc. Some portion of the channel program may have executed and committed changes. Information about the failure can be found in 'outnvl'. 12 The program fully executed, but the output buffer was not large enough to store the returned value. No output is returned through 'outnvl'. 28 The program was terminated because it exceeded its memory usage limit. Some portion of the channel program may have executed and committed changes to disk. No output is returned through 'outnvl'. 62 The program was terminated because it exceeded its Lua instruction limit. Some portion of the channel program may have executed and committed changes to disk. No output is returned through 'outnvl'. `)
void
executeChannelProgram
(
string pool
,
string program
,
string[string] parameters
,
ulong instrLimit = (10 * 1000 * 1000)
,
ulong memLimit = (10 * 1024 * 1024)
)

Meta