MCPcopy Create free account
hub / github.com/MaterializeInc/materialize / parse_item_name

Function parse_item_name

src/sql-parser/src/parser.rs:194–207  ·  view source on GitHub ↗

Parses a SQL item name (e.g. `"db"."schema"."table"` or `my_view`).

(sql: &str)

Source from the content-addressed store, hash-verified

192
193/// Parses a SQL item name (e.g. `"db"."schema"."table"` or `my_view`).
194pub fn parse_item_name(sql: &str) -> Result<UnresolvedItemName, ParserError> {
195 let tokens = lexer::lex(sql)?;
196 let mut parser = Parser::new(sql, tokens);
197 let name = parser.parse_item_name()?;
198 if parser.next_token().is_some() {
199 parser_err!(
200 parser,
201 parser.peek_prev_pos(),
202 "extra token after item name"
203 )
204 } else {
205 Ok(name)
206 }
207}
208
209/// Parses a string containing a comma-separated list of identifiers and
210/// returns their underlying string values.

Callers 3

safe_data_product_nameFunction · 0.85
from_strMethod · 0.85
parse_qualified_schemaFunction · 0.85

Calls 4

parse_item_nameMethod · 0.80
is_someMethod · 0.80
next_tokenMethod · 0.80
lexFunction · 0.50

Tested by

no test coverage detected