diff options
Diffstat (limited to 'TurtleArt/taprimitive.py')
-rw-r--r-- | TurtleArt/taprimitive.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/TurtleArt/taprimitive.py b/TurtleArt/taprimitive.py index 1fbeac9..6f83294 100644 --- a/TurtleArt/taprimitive.py +++ b/TurtleArt/taprimitive.py @@ -365,6 +365,15 @@ class Primitive(object): id_str = 'BOX[%s]' % (repr(ast_to_value(new_arg_asts[0]))) return ast.Name(id=id_str, ctx=ast.Load) + # action stacks + elif self == LogoCode.prim_define_stack: + return + elif self == LogoCode.prim_invoke_stack: + stack_name = ast_to_value(new_arg_asts[0]) + stack_func_name = 'ACTION[%s]' % (repr(stack_name)) + stack_func = ast.Name(id=stack_func_name, ctx=ast.Load) + return get_call_ast('logo.icall', [stack_func]) + # standard operators elif self.func.__name__ in Primitive.STANDARD_OPERATORS: op = Primitive.STANDARD_OPERATORS[self.func.__name__] |