[
    FullOpeningTag(
        FullOpeningTagStatement {
            span: Span {
                line: 1,
                column: 1,
                position: 0,
            },
        },
    ),
    Expression(
        ExpressionStatement {
            expression: AssignmentOperation(
                Assign {
                    left: Variable(
                        SimpleVariable(
                            SimpleVariable {
                                span: Span {
                                    line: 3,
                                    column: 1,
                                    position: 7,
                                },
                                name: "$e",
                            },
                        ),
                    ),
                    equals: Span {
                        line: 3,
                        column: 4,
                        position: 10,
                    },
                    right: FunctionCall(
                        FunctionCallExpression {
                            target: Parenthesized(
                                ParenthesizedExpression {
                                    start: Span {
                                        line: 3,
                                        column: 6,
                                        position: 12,
                                    },
                                    expr: ArrowFunction(
                                        ArrowFunctionExpression {
                                            comments: CommentGroup {
                                                comments: [],
                                            },
                                            static: None,
                                            ampersand: None,
                                            fn: Span {
                                                line: 3,
                                                column: 7,
                                                position: 13,
                                            },
                                            attributes: [],
                                            parameters: FunctionParameterList {
                                                comments: CommentGroup {
                                                    comments: [],
                                                },
                                                left_parenthesis: Span {
                                                    line: 3,
                                                    column: 10,
                                                    position: 16,
                                                },
                                                parameters: CommaSeparated {
                                                    inner: [],
                                                    commas: [],
                                                },
                                                right_parenthesis: Span {
                                                    line: 3,
                                                    column: 11,
                                                    position: 17,
                                                },
                                            },
                                            return_type: Some(
                                                ReturnType {
                                                    colon: Span {
                                                        line: 3,
                                                        column: 12,
                                                        position: 18,
                                                    },
                                                    data_type: Named(
                                                        Span {
                                                            line: 3,
                                                            column: 14,
                                                            position: 20,
                                                        },
                                                        "\Generator",
                                                    ),
                                                },
                                            ),
                                            double_arrow: Span {
                                                line: 3,
                                                column: 25,
                                                position: 31,
                                            },
                                            body: Yield(
                                                YieldExpression {
                                                    key: None,
                                                    value: None,
                                                },
                                            ),
                                        },
                                    ),
                                    end: Span {
                                        line: 3,
                                        column: 33,
                                        position: 39,
                                    },
                                },
                            ),
                            arguments: ArgumentList {
                                comments: CommentGroup {
                                    comments: [],
                                },
                                left_parenthesis: Span {
                                    line: 3,
                                    column: 34,
                                    position: 40,
                                },
                                arguments: [],
                                right_parenthesis: Span {
                                    line: 3,
                                    column: 35,
                                    position: 41,
                                },
                            },
                        },
                    ),
                },
            ),
            ending: Semicolon(
                Span {
                    line: 3,
                    column: 36,
                    position: 42,
                },
            ),
        },
    ),
]
