transforms_util.py 文件源码

python
阅读 29 收藏 0 点赞 0 评论 0

项目:vizgen 作者: uva-graphics 项目源码 文件源码
def replace_scalar_assign(defnode, namenode):
    """
    search in defnode to see if namenode assigned as scalar before
    if it's true, return the assigned str
    """
    potential_assignnodes = py_ast.find_all(defnode, ast.Assign)
    assignnodes = []
    for potential_assignnode in potential_assignnodes:
        try:
            if len(potential_assignnode.targets) == 1:
                if isinstance(potential_assignnode.targets[0], ast.Name):
                    if potential_assignnode.targets[0].id == namenode.id:
                        if is_before(potential_assignnode, namenode):
                            assignnodes.append(potential_assignnode)
        except:
            pass
    if len(assignnodes) == 1:
        return py_ast.dump_ast(assignnodes[0].value)
    else:
        raise ValueError
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号