summaryrefslogtreecommitdiffstats
path: root/generic/tclCompile.c
diff options
context:
space:
mode:
authordkf <dkf@noemail.net>2014-01-21 15:07:59 (GMT)
committerdkf <dkf@noemail.net>2014-01-21 15:07:59 (GMT)
commitf1116fd129603f124fb27fc0f2d136be0fc2fa47 (patch)
treeedde2684acb69fbdefc4ae76635e5cb9ab149de5 /generic/tclCompile.c
parent24c6406d5fb894fd3d92bf53fc8ee51b839dca1e (diff)
downloadtcl-f1116fd129603f124fb27fc0f2d136be0fc2fa47.zip
tcl-f1116fd129603f124fb27fc0f2d136be0fc2fa47.tar.gz
tcl-f1116fd129603f124fb27fc0f2d136be0fc2fa47.tar.bz2
implementation of [yieldto] in bytecode
FossilOrigin-Name: ef8db24f850e7d8c4585775b0ee1fc9ab2d86ae1
Diffstat (limited to 'generic/tclCompile.c')
-rw-r--r--generic/tclCompile.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/generic/tclCompile.c b/generic/tclCompile.c
index bd97e3e..f75ac83 100644
--- a/generic/tclCompile.c
+++ b/generic/tclCompile.c
@@ -631,6 +631,13 @@ InstructionDesc const tclInstructionTable[] = {
* arguments (similar to invokeStk).
* Stack: ... "nextto" className arg3 arg4 -- argN => ... result */
+ {"yieldToInvoke", 1, 0, 0, {OPERAND_NONE}},
+ /* Makes the current coroutine yield the value at the top of the
+ * stack, invoking the given command/args with resolution in the given
+ * namespace (all packed into a list), and places the list of values
+ * that are the response back on top of the stack when it resumes.
+ * Stack: ... [list ns cmd arg1 ... argN] => ... resumeList */
+
{NULL, 0, 0, 0, {OPERAND_NONE}}
};