parse

Function parse 

Source
pub fn parse(input: &str) -> QailResult<QailCmd>
Expand description

Parse a complete QAIL query string (v2 syntax only).

Uses keyword-based syntax: get table fields * where col = value

Examples found in repository?
examples/test_param_repro.rs (line 6)
3fn main() {
4    let query = "get::t 'coalesce(uc.unread_count, 0)@unread_count";
5    
6    match parse(query) {
7        Ok(cmd) => {
8            let res = cmd.to_sql_parameterized();
9            println!("SQL: {}", res.sql);
10            if res.sql.contains("coalesce(uc.unread_count, 0) AS \"unread_count\"") || res.sql.contains("COALESCE(uc.unread_count, 0) AS \"unread_count\"") {
11                println!("SUCCESS: Alias found correctly.");
12            } else {
13                println!("FAILURE: Alias missing in parameterized SQL.");
14                std::process::exit(1);
15            }
16        }
17        Err(e) => {
18            eprintln!("Parse error: {}", e);
19            std::process::exit(1);
20        }
21    }
22}