--- source: prqlc/prqlc/tests/integration/queries.rs expression: "# mssql:test\n# glaredb:skip — TODO: started raising an error on 2024-05-20; see `window.prql`\n# for more details\nfrom albums\nselect {\n title,\n title_and_spaces = f\" {title} \",\n low = (title | text.lower),\n up = (title | text.upper),\n ltrimmed = (title | text.ltrim),\n rtrimmed = (title | text.rtrim),\n trimmed = (title | text.trim),\n len = (title | text.length),\n subs = (title | text.extract 2 5),\n replace = (title | text.replace \"al\" \"PIKA\"),\n}\nsort {title}\nfilter (title | text.starts_with \"Black\") || (title | text.contains \"Sabbath\") || (title | text.ends_with \"os\")\n" input_file: prqlc/prqlc/tests/integration/queries/text_module.prql snapshot_kind: text --- frames: - - 1:125-479 - columns: - !Single name: - albums - title target_id: 126 target_name: null - !Single name: - title_and_spaces target_id: 127 target_name: null - !Single name: - low target_id: 129 target_name: null - !Single name: - up target_id: 132 target_name: null - !Single name: - ltrimmed target_id: 135 target_name: null - !Single name: - rtrimmed target_id: 138 target_name: null - !Single name: - trimmed target_id: 141 target_name: null - !Single name: - len target_id: 144 target_name: null - !Single name: - subs target_id: 147 target_name: null - !Single name: - replace target_id: 153 target_name: null inputs: - id: 124 name: albums table: - default_db - albums - - 1:480-492 - columns: - !Single name: - albums - title target_id: 126 target_name: null - !Single name: - title_and_spaces target_id: 127 target_name: null - !Single name: - low target_id: 129 target_name: null - !Single name: - up target_id: 132 target_name: null - !Single name: - ltrimmed target_id: 135 target_name: null - !Single name: - rtrimmed target_id: 138 target_name: null - !Single name: - trimmed target_id: 141 target_name: null - !Single name: - len target_id: 144 target_name: null - !Single name: - subs target_id: 147 target_name: null - !Single name: - replace target_id: 153 target_name: null inputs: - id: 124 name: albums table: - default_db - albums - - 1:493-604 - columns: - !Single name: - albums - title target_id: 126 target_name: null - !Single name: - title_and_spaces target_id: 127 target_name: null - !Single name: - low target_id: 129 target_name: null - !Single name: - up target_id: 132 target_name: null - !Single name: - ltrimmed target_id: 135 target_name: null - !Single name: - rtrimmed target_id: 138 target_name: null - !Single name: - trimmed target_id: 141 target_name: null - !Single name: - len target_id: 144 target_name: null - !Single name: - subs target_id: 147 target_name: null - !Single name: - replace target_id: 153 target_name: null inputs: - id: 124 name: albums table: - default_db - albums nodes: - id: 124 kind: Ident span: 1:113-124 ident: !Ident - default_db - albums parent: 160 - id: 126 kind: Ident span: 1:138-143 ident: !Ident - this - albums - title targets: - 124 parent: 159 - id: 127 kind: FString span: 1:168-182 alias: title_and_spaces targets: - 128 parent: 159 - id: 128 kind: Ident span: 1:173-178 ident: !Ident - this - albums - title targets: - 124 - id: 129 kind: RqOperator span: 1:203-213 alias: low targets: - 131 parent: 159 - id: 131 kind: Ident span: 1:195-200 ident: !Ident - this - albums - title targets: - 124 - id: 132 kind: RqOperator span: 1:234-244 alias: up targets: - 134 parent: 159 - id: 134 kind: Ident span: 1:226-231 ident: !Ident - this - albums - title targets: - 124 - id: 135 kind: RqOperator span: 1:271-281 alias: ltrimmed targets: - 137 parent: 159 - id: 137 kind: Ident span: 1:263-268 ident: !Ident - this - albums - title targets: - 124 - id: 138 kind: RqOperator span: 1:308-318 alias: rtrimmed targets: - 140 parent: 159 - id: 140 kind: Ident span: 1:300-305 ident: !Ident - this - albums - title targets: - 124 - id: 141 kind: RqOperator span: 1:344-353 alias: trimmed targets: - 143 parent: 159 - id: 143 kind: Ident span: 1:336-341 ident: !Ident - this - albums - title targets: - 124 - id: 144 kind: RqOperator span: 1:375-386 alias: len targets: - 146 parent: 159 - id: 146 kind: Ident span: 1:367-372 ident: !Ident - this - albums - title targets: - 124 - id: 147 kind: RqOperator span: 1:409-425 alias: subs targets: - 150 - 151 - 152 parent: 159 - id: 150 kind: Literal span: 1:422-423 - id: 151 kind: Literal span: 1:424-425 - id: 152 kind: Ident span: 1:401-406 ident: !Ident - this - albums - title targets: - 124 - id: 153 kind: RqOperator span: 1:451-475 alias: replace targets: - 156 - 157 - 158 parent: 159 - id: 156 kind: Literal span: 1:464-468 - id: 157 kind: Literal span: 1:469-475 - id: 158 kind: Ident span: 1:443-448 ident: !Ident - this - albums - title targets: - 124 - id: 159 kind: Tuple span: 1:132-479 children: - 126 - 127 - 129 - 132 - 135 - 138 - 141 - 144 - 147 - 153 parent: 160 - id: 160 kind: 'TransformCall: Select' span: 1:125-479 children: - 124 - 159 parent: 163 - id: 161 kind: Ident span: 1:486-491 ident: !Ident - this - albums - title targets: - 126 parent: 163 - id: 163 kind: 'TransformCall: Sort' span: 1:480-492 children: - 160 - 161 parent: 183 - id: 164 kind: RqOperator span: 1:500-604 targets: - 166 - 178 parent: 183 - id: 166 kind: RqOperator span: 1:500-571 targets: - 168 - 173 - id: 168 kind: RqOperator span: 1:509-533 targets: - 171 - 172 - id: 171 kind: Literal span: 1:526-533 - id: 172 kind: Ident span: 1:501-506 ident: !Ident - this - albums - title targets: - 126 - id: 173 kind: RqOperator span: 1:547-570 targets: - 176 - 177 - id: 176 kind: Literal span: 1:561-570 - id: 177 kind: Ident span: 1:539-544 ident: !Ident - this - albums - title targets: - 126 - id: 178 kind: RqOperator span: 1:584-603 targets: - 181 - 182 - id: 181 kind: Literal span: 1:599-603 - id: 182 kind: Ident span: 1:576-581 ident: !Ident - this - albums - title targets: - 126 - id: 183 kind: 'TransformCall: Filter' span: 1:493-604 children: - 163 - 164 ast: name: Project stmts: - VarDef: kind: Main name: main value: Pipeline: exprs: - FuncCall: name: Ident: from span: 1:113-117 args: - Ident: albums span: 1:118-124 span: 1:113-124 - FuncCall: name: Ident: select span: 1:125-131 args: - Tuple: - Ident: title span: 1:138-143 - FString: - !String ' ' - !Expr expr: Ident: title span: 1:173-178 format: null - !String ' ' span: 1:168-182 alias: title_and_spaces - Pipeline: exprs: - Ident: title span: 1:195-200 - Indirection: base: Ident: text span: 1:203-207 field: !Name lower span: 1:203-213 span: 1:194-214 alias: low - Pipeline: exprs: - Ident: title span: 1:226-231 - Indirection: base: Ident: text span: 1:234-238 field: !Name upper span: 1:234-244 span: 1:225-245 alias: up - Pipeline: exprs: - Ident: title span: 1:263-268 - Indirection: base: Ident: text span: 1:271-275 field: !Name ltrim span: 1:271-281 span: 1:262-282 alias: ltrimmed - Pipeline: exprs: - Ident: title span: 1:300-305 - Indirection: base: Ident: text span: 1:308-312 field: !Name rtrim span: 1:308-318 span: 1:299-319 alias: rtrimmed - Pipeline: exprs: - Ident: title span: 1:336-341 - Indirection: base: Ident: text span: 1:344-348 field: !Name trim span: 1:344-353 span: 1:335-354 alias: trimmed - Pipeline: exprs: - Ident: title span: 1:367-372 - Indirection: base: Ident: text span: 1:375-379 field: !Name length span: 1:375-386 span: 1:366-387 alias: len - Pipeline: exprs: - Ident: title span: 1:401-406 - FuncCall: name: Indirection: base: Ident: text span: 1:409-413 field: !Name extract span: 1:413-421 args: - Literal: Integer: 2 span: 1:422-423 - Literal: Integer: 5 span: 1:424-425 span: 1:409-425 span: 1:400-426 alias: subs - Pipeline: exprs: - Ident: title span: 1:443-448 - FuncCall: name: Indirection: base: Ident: text span: 1:451-455 field: !Name replace span: 1:455-463 args: - Literal: String: al span: 1:464-468 - Literal: String: PIKA span: 1:469-475 span: 1:451-475 span: 1:442-476 alias: replace span: 1:132-479 span: 1:125-479 - FuncCall: name: Ident: sort span: 1:480-484 args: - Tuple: - Ident: title span: 1:486-491 span: 1:485-492 span: 1:480-492 - FuncCall: name: Ident: filter span: 1:493-499 args: - Binary: left: Binary: left: Pipeline: exprs: - Ident: title span: 1:501-506 - FuncCall: name: Indirection: base: Ident: text span: 1:509-513 field: !Name starts_with span: 1:513-525 args: - Literal: String: Black span: 1:526-533 span: 1:509-533 span: 1:501-533 op: Or right: Pipeline: exprs: - Ident: title span: 1:539-544 - FuncCall: name: Indirection: base: Ident: text span: 1:547-551 field: !Name contains span: 1:551-560 args: - Literal: String: Sabbath span: 1:561-570 span: 1:547-570 span: 1:539-570 span: 1:500-571 op: Or right: Pipeline: exprs: - Ident: title span: 1:576-581 - FuncCall: name: Indirection: base: Ident: text span: 1:584-588 field: !Name ends_with span: 1:588-598 args: - Literal: String: os span: 1:599-603 span: 1:584-603 span: 1:576-603 span: 1:500-604 span: 1:493-604 span: 1:113-604 span: 1:0-604