DefinitionTree {
    definitions: [
        Namespace(
            NamespaceDefinition {
                namespace: Span {
                    line: 1,
                    column: 1,
                    position: 0,
                },
                name: Identifier {
                    span: Span {
                        line: 1,
                        column: 11,
                        position: 10,
                    },
                    value: "A\B\C\D\E",
                },
                semicolon: Span {
                    line: 1,
                    column: 20,
                    position: 19,
                },
                definitions: [
                    Function(
                        FunctionDefinition {
                            comments: CommentGroup {
                                comments: [],
                            },
                            attributes: [],
                            function: Span {
                                line: 3,
                                column: 1,
                                position: 22,
                            },
                            name: Identifier {
                                span: Span {
                                    line: 3,
                                    column: 10,
                                    position: 31,
                                },
                                value: "foo",
                            },
                            templates: None,
                            parameters: FunctionLikeParameterListDefinition {
                                comments: CommentGroup {
                                    comments: [],
                                },
                                left_parenthesis: Span {
                                    line: 3,
                                    column: 13,
                                    position: 34,
                                },
                                parameters: CommaSeparated {
                                    inner: [
                                        FunctionLikeParameterDefinition {
                                            comments: CommentGroup {
                                                comments: [],
                                            },
                                            attributes: [],
                                            type_definition: String(
                                                Span {
                                                    line: 3,
                                                    column: 14,
                                                    position: 35,
                                                },
                                            ),
                                            ellipsis: None,
                                            variable: Variable {
                                                span: Span {
                                                    line: 3,
                                                    column: 21,
                                                    position: 42,
                                                },
                                                name: "$s",
                                            },
                                            default: None,
                                        },
                                    ],
                                    commas: [],
                                },
                                right_parenthesis: Span {
                                    line: 3,
                                    column: 23,
                                    position: 44,
                                },
                            },
                            return_type: FunctionLikeReturnTypeDefinition {
                                colon: Span {
                                    line: 3,
                                    column: 24,
                                    position: 45,
                                },
                                type_definition: Identifier(
                                    TemplatedIdentifier {
                                        name: Identifier {
                                            span: Span {
                                                line: 3,
                                                column: 26,
                                                position: 47,
                                            },
                                            value: "static",
                                        },
                                        templates: None,
                                    },
                                ),
                            },
                            body: BlockStatement {
                                comments: CommentGroup {
                                    comments: [],
                                },
                                left_brace: Span {
                                    line: 3,
                                    column: 33,
                                    position: 54,
                                },
                                statements: [
                                    Expression(
                                        ExpressionStatement {
                                            comments: CommentGroup {
                                                comments: [],
                                            },
                                            expression: ExitConstruct(
                                                ExitWith {
                                                    comments: CommentGroup {
                                                        comments: [],
                                                    },
                                                    exit: Span {
                                                        line: 4,
                                                        column: 6,
                                                        position: 61,
                                                    },
                                                    left_parenthesis: Span {
                                                        line: 4,
                                                        column: 10,
                                                        position: 65,
                                                    },
                                                    value: Some(
                                                        Literal(
                                                            Integer(
                                                                LiteralInteger {
                                                                    comments: CommentGroup {
                                                                        comments: [],
                                                                    },
                                                                    value: "0",
                                                                    span: Span {
                                                                        line: 4,
                                                                        column: 11,
                                                                        position: 66,
                                                                    },
                                                                },
                                                            ),
                                                        ),
                                                    ),
                                                    right_parenthesis: Span {
                                                        line: 4,
                                                        column: 12,
                                                        position: 67,
                                                    },
                                                },
                                            ),
                                            semicolon: Span {
                                                line: 4,
                                                column: 13,
                                                position: 68,
                                            },
                                        },
                                    ),
                                ],
                                right_brace: Span {
                                    line: 5,
                                    column: 1,
                                    position: 70,
                                },
                            },
                        },
                    ),
                ],
            },
        ),
    ],
    eof: Span {
        line: 6,
        column: 1,
        position: 72,
    },
}