prql-compiler 0.2.2

PRQL is a modern language for transforming data — a simple, powerful, pipelined SQL replacement.
Documentation
---
source: prql-compiler/src/parser.rs
expression: "parse_tree_of_str(r#\"    filter country == \"USA\"\"#, Rule::pipeline)?"
---
[
    Pair {
        rule: pipeline,
        span: Span {
            str: "    filter country == \"USA\"",
            start: 0,
            end: 27,
        },
        inner: [
            Pair {
                rule: func_call,
                span: Span {
                    str: "filter country == \"USA\"",
                    start: 4,
                    end: 27,
                },
                inner: [
                    Pair {
                        rule: ident,
                        span: Span {
                            str: "filter",
                            start: 4,
                            end: 10,
                        },
                        inner: [],
                    },
                    Pair {
                        rule: expr,
                        span: Span {
                            str: "country == \"USA\"",
                            start: 11,
                            end: 27,
                        },
                        inner: [
                            Pair {
                                rule: expr_coalesce,
                                span: Span {
                                    str: "country == \"USA\"",
                                    start: 11,
                                    end: 27,
                                },
                                inner: [
                                    Pair {
                                        rule: expr_compare,
                                        span: Span {
                                            str: "country == \"USA\"",
                                            start: 11,
                                            end: 27,
                                        },
                                        inner: [
                                            Pair {
                                                rule: expr_add,
                                                span: Span {
                                                    str: "country ",
                                                    start: 11,
                                                    end: 19,
                                                },
                                                inner: [
                                                    Pair {
                                                        rule: expr_mul,
                                                        span: Span {
                                                            str: "country ",
                                                            start: 11,
                                                            end: 19,
                                                        },
                                                        inner: [
                                                            Pair {
                                                                rule: ident,
                                                                span: Span {
                                                                    str: "country",
                                                                    start: 11,
                                                                    end: 18,
                                                                },
                                                                inner: [],
                                                            },
                                                        ],
                                                    },
                                                ],
                                            },
                                            Pair {
                                                rule: operator_compare,
                                                span: Span {
                                                    str: "==",
                                                    start: 19,
                                                    end: 21,
                                                },
                                                inner: [],
                                            },
                                            Pair {
                                                rule: expr_add,
                                                span: Span {
                                                    str: "\"USA\"",
                                                    start: 22,
                                                    end: 27,
                                                },
                                                inner: [
                                                    Pair {
                                                        rule: expr_mul,
                                                        span: Span {
                                                            str: "\"USA\"",
                                                            start: 22,
                                                            end: 27,
                                                        },
                                                        inner: [
                                                            Pair {
                                                                rule: string,
                                                                span: Span {
                                                                    str: "\"USA\"",
                                                                    start: 22,
                                                                    end: 27,
                                                                },
                                                                inner: [
                                                                    Pair {
                                                                        rule: string_inner,
                                                                        span: Span {
                                                                            str: "USA",
                                                                            start: 23,
                                                                            end: 26,
                                                                        },
                                                                        inner: [],
                                                                    },
                                                                ],
                                                            },
                                                        ],
                                                    },
                                                ],
                                            },
                                        ],
                                    },
                                ],
                            },
                        ],
                    },
                ],
            },
        ],
    },
]