DefinitionTree {
    definitions: [
        Namespace(
            NamespaceDefinition {
                namespace: Span {
                    line: 1,
                    column: 1,
                    position: 0,
                },
                name: Identifier {
                    span: Span {
                        line: 1,
                        column: 11,
                        position: 10,
                    },
                    value: "Foo\Bar",
                },
                semicolon: Span {
                    line: 1,
                    column: 18,
                    position: 17,
                },
                definitions: [
                    Class(
                        ClassDefinition {
                            comments: CommentGroup {
                                comments: [],
                            },
                            attributes: [],
                            modifiers: ClassModifierDefinitionGroup {
                                modifiers: [
                                    Final(
                                        Span {
                                            line: 3,
                                            column: 1,
                                            position: 20,
                                        },
                                    ),
                                ],
                            },
                            class: Span {
                                line: 3,
                                column: 7,
                                position: 26,
                            },
                            name: Identifier {
                                span: Span {
                                    line: 3,
                                    column: 13,
                                    position: 32,
                                },
                                value: "Baz",
                            },
                            templates: None,
                            extends: None,
                            implements: None,
                            body: ClassDefinitionBody {
                                left_brace: Span {
                                    line: 3,
                                    column: 17,
                                    position: 36,
                                },
                                members: [
                                    ConcreteConstructor(
                                        ConcreteConstructorDefinition {
                                            comments: CommentGroup {
                                                comments: [],
                                            },
                                            attributes: [],
                                            modifiers: MethodModifierDefinitionGroup {
                                                modifiers: [
                                                    Public(
                                                        Span {
                                                            line: 4,
                                                            column: 6,
                                                            position: 43,
                                                        },
                                                    ),
                                                ],
                                            },
                                            function: Span {
                                                line: 4,
                                                column: 13,
                                                position: 50,
                                            },
                                            name: Identifier {
                                                span: Span {
                                                    line: 4,
                                                    column: 22,
                                                    position: 59,
                                                },
                                                value: "__construct",
                                            },
                                            parameters: ConstructorParameterListDefinition {
                                                comments: CommentGroup {
                                                    comments: [],
                                                },
                                                left_parenthesis: Span {
                                                    line: 4,
                                                    column: 33,
                                                    position: 70,
                                                },
                                                parameters: CommaSeparated {
                                                    inner: [
                                                        ConstructorParameterDefinition {
                                                            attributes: [],
                                                            comments: CommentGroup {
                                                                comments: [],
                                                            },
                                                            modifiers: PromotedPropertyModifierDefinitionGroup {
                                                                modifiers: [
                                                                    Public(
                                                                        Span {
                                                                            line: 5,
                                                                            column: 11,
                                                                            position: 82,
                                                                        },
                                                                    ),
                                                                    Readonly(
                                                                        Span {
                                                                            line: 5,
                                                                            column: 18,
                                                                            position: 89,
                                                                        },
                                                                    ),
                                                                ],
                                                            },
                                                            type_definition: String(
                                                                Span {
                                                                    line: 5,
                                                                    column: 27,
                                                                    position: 98,
                                                                },
                                                            ),
                                                            ellipsis: None,
                                                            variable: Variable {
                                                                span: Span {
                                                                    line: 5,
                                                                    column: 34,
                                                                    position: 105,
                                                                },
                                                                name: "$name",
                                                            },
                                                            default: Some(
                                                                FunctionLikeParameterDefaultValueDefinition {
                                                                    equals: Span {
                                                                        line: 5,
                                                                        column: 40,
                                                                        position: 111,
                                                                    },
                                                                    value: Literal(
                                                                        String(
                                                                            LiteralString {
                                                                                comments: CommentGroup {
                                                                                    comments: [],
                                                                                },
                                                                                value: "'foo'",
                                                                                span: Span {
                                                                                    line: 5,
                                                                                    column: 42,
                                                                                    position: 113,
                                                                                },
                                                                            },
                                                                        ),
                                                                    ),
                                                                },
                                                            ),
                                                        },
                                                    ],
                                                    commas: [
                                                        Span {
                                                            line: 5,
                                                            column: 47,
                                                            position: 118,
                                                        },
                                                    ],
                                                },
                                                right_parenthesis: Span {
                                                    line: 6,
                                                    column: 6,
                                                    position: 125,
                                                },
                                            },
                                            body: BlockStatement {
                                                comments: CommentGroup {
                                                    comments: [],
                                                },
                                                left_brace: Span {
                                                    line: 6,
                                                    column: 8,
                                                    position: 127,
                                                },
                                                statements: [],
                                                right_brace: Span {
                                                    line: 6,
                                                    column: 9,
                                                    position: 128,
                                                },
                                            },
                                        },
                                    ),
                                ],
                                right_brace: Span {
                                    line: 7,
                                    column: 1,
                                    position: 130,
                                },
                            },
                        },
                    ),
                ],
            },
        ),
    ],
    eof: Span {
        line: 8,
        column: 1,
        position: 132,
    },
}