Documentation
¶
Overview ¶
Package grammars defines SQL dialect grammars.
Index ¶
Constants ¶
View Source
const ( // SQLiteGrammar contains the SQLite DDL grammar rules SQLiteGrammar = `` /* 909-byte string literal not displayed */ // PostgreSQLGrammar contains the PostgreSQL DDL grammar rules PostgreSQLGrammar = `` /* 1397-byte string literal not displayed */ // MySQLGrammar contains the MySQL DDL grammar rules MySQLGrammar = `` /* 1920-byte string literal not displayed */ )
Variables ¶
This section is empty.
Functions ¶
func GetDialectGrammar ¶
GetDialectGrammar returns the grammar for a given dialect
Types ¶
type GrammarDefinition ¶
type GrammarDefinition struct {
Statements []*StatementDefinition `@@*`
}
GrammarDefinition represents a parsed SQL grammar
type RuleDefinition ¶
type RuleDefinition struct {
Name string `@Ident "="`
Variants []*VariantDef `"|"? @@*`
}
RuleDefinition represents a grammar rule
type StatementDefinition ¶
type StatementDefinition struct {
Name string `@Ident`
Pattern string `@String`
Rules []*RuleDefinition `@@*"`
}
StatementDefinition represents a SQL statement type
type VariantDef ¶
type VariantDef struct {
Tokens []string `@Ident+`
}
VariantDef represents a rule variant
Click to show internal directories.
Click to hide internal directories.