MCPcopy Create free account
hub / github.com/PRQL/prql / sql_keywords

Function sql_keywords

prqlc/prqlc/src/sql/keywords.rs:42–70  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

40}
41
42fn sql_keywords() -> &'static HashSet<&'static str> {
43 static SQL_KEYWORDS: OnceLock<HashSet<&str>> = OnceLock::new();
44 SQL_KEYWORDS.get_or_init(|| {
45 let mut m = HashSet::new();
46 m.extend(SQLITE_KEYWORDS);
47 m.extend(POSTGRES_KEYWORDS);
48 m.extend(DUCKDB_KEYWORDS);
49 m.extend(BIGQUERY_KEYWORDS);
50
51 let reverse_index: HashMap<&Keyword, usize> = ALL_KEYWORDS_INDEX
52 .iter()
53 .enumerate()
54 .map(|(idx, kw)| (kw, idx))
55 .collect();
56
57 m.extend(
58 RESERVED_FOR_COLUMN_ALIAS
59 .iter()
60 .map(|x| ALL_KEYWORDS[reverse_index[x]]),
61 );
62
63 m.extend(
64 RESERVED_FOR_TABLE_ALIAS
65 .iter()
66 .map(|x| ALL_KEYWORDS[reverse_index[x]]),
67 );
68 m
69 })
70}
71
72const SQLITE_KEYWORDS: &[&str] = &[
73 "ABORT",

Callers 1

is_keywordFunction · 0.85

Calls 3

mapMethod · 0.80
iterMethod · 0.80
collectMethod · 0.45

Tested by

no test coverage detected