Esempio n. 1
0
        return init

    for k, v in _ast.__dict__.items():
        if isinstance(v, type) and issubclass(v, _ast.AST):
            ns = {"__init__": make_new_init(v, v._fields), "_sup_cls": v}
            v = SupertypeMeta(k, (v, ), ns)

        setattr(ast, k, v)

    if not hasattr(_ast, "Constant"):

        class Constant(ConsistentConstant):
            pass

        ast.Constant = Constant

        def get_constant(n: Constant):
            if isinstance(n, ast.Num):
                return n.n
            elif isinstance(n, ast.Str):
                return n.s
            return n.value
    else:

        def get_constant(n: ast.Constant):
            return n.value

    if not hasattr(_ast, "Starred"):

        class Starred: