mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-23 13:00:17 +00:00
Update compiler.h
This commit is contained in:
parent
cf5fadd3b0
commit
3cafab9029
@ -641,7 +641,7 @@ class Compiler {
|
|||||||
break;
|
break;
|
||||||
case TK("yield"):
|
case TK("yield"):
|
||||||
if (contexts.size() <= 1) SyntaxError("'yield' outside function");
|
if (contexts.size() <= 1) SyntaxError("'yield' outside function");
|
||||||
EXPR_TUPLE(true);
|
EXPR_TUPLE(false);
|
||||||
// if yield present, mark the function as generator
|
// if yield present, mark the function as generator
|
||||||
ctx()->co->is_generator = true;
|
ctx()->co->is_generator = true;
|
||||||
ctx()->emit(OP_YIELD_VALUE, BC_NOARG, kw_line);
|
ctx()->emit(OP_YIELD_VALUE, BC_NOARG, kw_line);
|
||||||
@ -652,7 +652,7 @@ class Compiler {
|
|||||||
if(match_end_stmt()){
|
if(match_end_stmt()){
|
||||||
ctx()->emit(OP_LOAD_NONE, BC_NOARG, kw_line);
|
ctx()->emit(OP_LOAD_NONE, BC_NOARG, kw_line);
|
||||||
}else{
|
}else{
|
||||||
EXPR_TUPLE(true);
|
EXPR_TUPLE(false);
|
||||||
consume_end_stmt();
|
consume_end_stmt();
|
||||||
}
|
}
|
||||||
ctx()->emit(OP_RETURN_VALUE, BC_NOARG, kw_line);
|
ctx()->emit(OP_RETURN_VALUE, BC_NOARG, kw_line);
|
||||||
@ -669,7 +669,7 @@ class Compiler {
|
|||||||
case TK("pass"): consume_end_stmt(); break;
|
case TK("pass"): consume_end_stmt(); break;
|
||||||
/*************************************************/
|
/*************************************************/
|
||||||
case TK("assert"):
|
case TK("assert"):
|
||||||
EXPR_TUPLE(true);
|
EXPR_TUPLE(false);
|
||||||
// TODO: change OP_ASSERT impl in ceval.h
|
// TODO: change OP_ASSERT impl in ceval.h
|
||||||
ctx()->emit(OP_ASSERT, BC_NOARG, kw_line);
|
ctx()->emit(OP_ASSERT, BC_NOARG, kw_line);
|
||||||
consume_end_stmt();
|
consume_end_stmt();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user