rustpython-parser 0.4.0

Python language parser for Python3.
Documentation
---
source: parser/src/parser.rs
expression: parse_ast
---
[
    Try(
        StmtTry {
            range: 0..134,
            body: [
                Raise(
                    StmtRaise {
                        range: 9..28,
                        exc: Some(
                            Call(
                                ExprCall {
                                    range: 15..28,
                                    func: Name(
                                        ExprName {
                                            range: 15..25,
                                            id: Identifier(
                                                "ValueError",
                                            ),
                                            ctx: Load,
                                        },
                                    ),
                                    args: [
                                        Constant(
                                            ExprConstant {
                                                range: 26..27,
                                                value: Int(
                                                    1,
                                                ),
                                                kind: None,
                                            },
                                        ),
                                    ],
                                    keywords: [],
                                },
                            ),
                        ),
                        cause: None,
                    },
                ),
            ],
            handlers: [
                ExceptHandler(
                    ExceptHandlerExceptHandler {
                        range: 29..82,
                        type_: Some(
                            Name(
                                ExprName {
                                    range: 36..45,
                                    id: Identifier(
                                        "TypeError",
                                    ),
                                    ctx: Load,
                                },
                            ),
                        ),
                        name: Some(
                            Identifier(
                                "e",
                            ),
                        ),
                        body: [
                            Expr(
                                StmtExpr {
                                    range: 56..82,
                                    value: Call(
                                        ExprCall {
                                            range: 56..82,
                                            func: Name(
                                                ExprName {
                                                    range: 56..61,
                                                    id: Identifier(
                                                        "print",
                                                    ),
                                                    ctx: Load,
                                                },
                                            ),
                                            args: [
                                                JoinedStr(
                                                    ExprJoinedStr {
                                                        range: 62..81,
                                                        values: [
                                                            Constant(
                                                                ExprConstant {
                                                                    range: 62..81,
                                                                    value: Str(
                                                                        "caught ",
                                                                    ),
                                                                    kind: None,
                                                                },
                                                            ),
                                                            FormattedValue(
                                                                ExprFormattedValue {
                                                                    range: 62..81,
                                                                    value: Call(
                                                                        ExprCall {
                                                                            range: 72..79,
                                                                            func: Name(
                                                                                ExprName {
                                                                                    range: 72..76,
                                                                                    id: Identifier(
                                                                                        "type",
                                                                                    ),
                                                                                    ctx: Load,
                                                                                },
                                                                            ),
                                                                            args: [
                                                                                Name(
                                                                                    ExprName {
                                                                                        range: 77..78,
                                                                                        id: Identifier(
                                                                                            "e",
                                                                                        ),
                                                                                        ctx: Load,
                                                                                    },
                                                                                ),
                                                                            ],
                                                                            keywords: [],
                                                                        },
                                                                    ),
                                                                    conversion: None,
                                                                    format_spec: None,
                                                                },
                                                            ),
                                                        ],
                                                    },
                                                ),
                                            ],
                                            keywords: [],
                                        },
                                    ),
                                },
                            ),
                        ],
                    },
                ),
                ExceptHandler(
                    ExceptHandlerExceptHandler {
                        range: 83..134,
                        type_: Some(
                            Name(
                                ExprName {
                                    range: 90..97,
                                    id: Identifier(
                                        "OSError",
                                    ),
                                    ctx: Load,
                                },
                            ),
                        ),
                        name: Some(
                            Identifier(
                                "e",
                            ),
                        ),
                        body: [
                            Expr(
                                StmtExpr {
                                    range: 108..134,
                                    value: Call(
                                        ExprCall {
                                            range: 108..134,
                                            func: Name(
                                                ExprName {
                                                    range: 108..113,
                                                    id: Identifier(
                                                        "print",
                                                    ),
                                                    ctx: Load,
                                                },
                                            ),
                                            args: [
                                                JoinedStr(
                                                    ExprJoinedStr {
                                                        range: 114..133,
                                                        values: [
                                                            Constant(
                                                                ExprConstant {
                                                                    range: 114..133,
                                                                    value: Str(
                                                                        "caught ",
                                                                    ),
                                                                    kind: None,
                                                                },
                                                            ),
                                                            FormattedValue(
                                                                ExprFormattedValue {
                                                                    range: 114..133,
                                                                    value: Call(
                                                                        ExprCall {
                                                                            range: 124..131,
                                                                            func: Name(
                                                                                ExprName {
                                                                                    range: 124..128,
                                                                                    id: Identifier(
                                                                                        "type",
                                                                                    ),
                                                                                    ctx: Load,
                                                                                },
                                                                            ),
                                                                            args: [
                                                                                Name(
                                                                                    ExprName {
                                                                                        range: 129..130,
                                                                                        id: Identifier(
                                                                                            "e",
                                                                                        ),
                                                                                        ctx: Load,
                                                                                    },
                                                                                ),
                                                                            ],
                                                                            keywords: [],
                                                                        },
                                                                    ),
                                                                    conversion: None,
                                                                    format_spec: None,
                                                                },
                                                            ),
                                                        ],
                                                    },
                                                ),
                                            ],
                                            keywords: [],
                                        },
                                    ),
                                },
                            ),
                        ],
                    },
                ),
            ],
            orelse: [],
            finalbody: [],
        },
    ),
]