Esempio n. 1
0
    def save_func(self, func, exp):
        """保存函数"""
        if func.startswith(Configuration.FuncPrefix):

            if exp.find(Configuration.UserDeclarator) != -1:
                raise Exception("invalid syntax")
            if exp.find("=") != -1:
                raise Exception("invalid syntax")

            func = Convertor.format_usrname(func)
            lmd = Supporter.args2list(func_lambda(exp, self))#包装自定义函数
            self._handler.add_api(func, lmd)#加入到虚拟空间中
        else:
            raise Exception("Function should starts with #")
Esempio n. 2
0
 def get_obj(self, name):
     """获取对象"""
     name = Convertor.format_usrname(name)
     return self._handler.Environment.get(name)
Esempio n. 3
0
 def del_objs(self, vars):
     """删除对象"""
     vars = ",".join(Convertor.format_usrname(v) for v in vars)
     self._handler.exec_code("del %s" % vars)
Esempio n. 4
0
 def save_vars(self, vars, vals):
     """保存变量"""
     for n, v in zip(vars, vals):
         n = Convertor.format_usrname(n)
         #实际成为了YCPY虚拟环境中全局变量
         self._handler.add_api(n, v)