berkerpeksag / astor

Python AST read/write
https://pypi.org/project/astor/
BSD 3-Clause "New" or "Revised" License
793 stars 101 forks source link

Ship an own AnnAssign impl, that can be used to generate code for older pythons #184

Open KOLANICH opened 4 years ago

KOLANICH commented 4 years ago
def ourAnnAssign(target: ast.AST, value: ast.AST, annotation: ast.AST, useDedicatedSyntax: bool = False) -> OptAnnAssignT:
        if useDedicatedSyntax:
            return ast.AnnAssign(
                target=target,
                annotation=annotation,
                value=value,
                simple=1,
            )
        else:
            typeString = astor.to_source(ast, pretty_source="".join)
            return ast.Assign(targets=[target], value=value, type_comment=typeString)