Skip to main content

split_statements

Function split_statements 

Source
pub fn split_statements(input: &str) -> Vec<&str>
Expand description

Splits ;-separated statement text into individual statement slices without building any parse tree – a ; inside a single-quoted ('...'), double-quoted ("..."), or backtick-quoted (`...`) region is never treated as a separator, matching exactly what the lexer’s own CHAR_LITERAL/STRING_LITERAL/ESC_LITERAL rules consider part of the literal (see grammar/CypherLexer.g4). Backtick-quoted identifiers have no escape sequences in this grammar (ESC_LITERAL : '’ .*? ’') – a backslash there is just a literal character, not an escape introducer, unlike inside the other two. Doesn’t validate escape sequences itself (that’s parse_antlr’s job once each slice is actually parsed) – only tracks “am I currently inside a quoted region” well enough to find the real separators.