module SQLiterate
grammar Identifier include Keywords rule identifier literal_identifier / quoted_identifier end rule literal_identifier !keyword [\p{Alpha}_] [\p{Alnum}_$]* <Node::LiteralIdentifier> end rule quoted_identifier '"' c:( identifier_char )* '"' <Node::QuotedIdentifier> end rule identifier_char '""' <Node::IdentifierChar::Quote> / [^"] <Node::IdentifierChar::Text> end rule qualified_name schema_name '.' identifier <Node::QualifiedName> / table_name end rule schema_name identifier end rule table_name identifier end rule column_name identifier end rule all_fields '*' <Node::AllFields> end end
end