MCPcopy Create free account
hub / github.com/AfterShip/clickhouse-sql-parser / parseCreateUser

Method parseCreateUser

parser/parse_system.go:882–908  ·  view source on GitHub ↗
(pos Pos)

Source from the content-addressed store, hash-verified

880}
881
882func (p *Parser) parseCreateUser(pos Pos) (*CreateUser, error) {
883 if err := p.expectKeyword(KeywordUser); err != nil {
884 return nil, err
885 }
886
887 createUser := &CreateUser{CreatePos: pos}
888
889 // Handle IF NOT EXISTS or OR REPLACE
890 if err := p.parseCreateUserModifiers(createUser); err != nil {
891 return nil, err
892 }
893
894 // Parse user names
895 userNames, err := p.parseUserNames()
896 if err != nil {
897 return nil, err
898 }
899 createUser.UserNames = userNames
900 createUser.StatementEnd = userNames[len(userNames)-1].End()
901
902 // Parse optional clauses
903 if err := p.parseOptionalClauses(createUser); err != nil {
904 return nil, err
905 }
906
907 return createUser, nil
908}
909
910func (p *Parser) parserDropUserOrRole(pos Pos) (*DropUserOrRole, error) {
911 var target string

Callers 1

parseDDLMethod · 0.95

Calls 5

expectKeywordMethod · 0.95
parseUserNamesMethod · 0.95
parseOptionalClausesMethod · 0.95
EndMethod · 0.65

Tested by

no test coverage detected