apollo-federation 2.13.1

Apollo Federation
Documentation
---
source: apollo-federation/src/connectors/json_selection/parser.rs
expression: "selection!(\"...a{b c}\", spec)"
---
JSONSelection {
    inner: Named(
        SubSelection {
            selections: [
                NamedSelection {
                    prefix: Spread(
                        Some(
                            0..3,
                        ),
                    ),
                    path: PathSelection {
                        path: WithRange {
                            node: Key(
                                WithRange {
                                    node: Field(
                                        "a",
                                    ),
                                    range: Some(
                                        3..4,
                                    ),
                                },
                                WithRange {
                                    node: Selection(
                                        SubSelection {
                                            selections: [
                                                NamedSelection {
                                                    prefix: None,
                                                    path: PathSelection {
                                                        path: WithRange {
                                                            node: Key(
                                                                WithRange {
                                                                    node: Field(
                                                                        "b",
                                                                    ),
                                                                    range: Some(
                                                                        5..6,
                                                                    ),
                                                                },
                                                                WithRange {
                                                                    node: Empty,
                                                                    range: Some(
                                                                        6..6,
                                                                    ),
                                                                },
                                                            ),
                                                            range: Some(
                                                                5..6,
                                                            ),
                                                        },
                                                    },
                                                },
                                                NamedSelection {
                                                    prefix: None,
                                                    path: PathSelection {
                                                        path: WithRange {
                                                            node: Key(
                                                                WithRange {
                                                                    node: Field(
                                                                        "c",
                                                                    ),
                                                                    range: Some(
                                                                        7..8,
                                                                    ),
                                                                },
                                                                WithRange {
                                                                    node: Empty,
                                                                    range: Some(
                                                                        8..8,
                                                                    ),
                                                                },
                                                            ),
                                                            range: Some(
                                                                7..8,
                                                            ),
                                                        },
                                                    },
                                                },
                                            ],
                                            range: Some(
                                                4..9,
                                            ),
                                        },
                                    ),
                                    range: Some(
                                        4..9,
                                    ),
                                },
                            ),
                            range: Some(
                                3..9,
                            ),
                        },
                    },
                },
            ],
            range: Some(
                0..9,
            ),
        },
    ),
    spec: V0_3,
}