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

Method parseTableIndex

parser/parser_alter.go:276–310  ·  view source on GitHub ↗
(pos Pos)

Source from the content-addressed store, hash-verified

274}
275
276func (p *Parser) parseTableIndex(pos Pos) (*TableIndex, error) {
277 name, err := p.ParseNestedIdentifier(p.Pos())
278 if err != nil {
279 return nil, err
280 }
281
282 columnExpr, err := p.parseColumnsExpr(p.Pos())
283 if err != nil {
284 return nil, err
285 }
286
287 if err := p.expectKeyword(KeywordType); err != nil {
288 return nil, err
289 }
290 columnType, err := p.parseColumnType(p.Pos())
291 if err != nil {
292 return nil, err
293 }
294
295 if err := p.expectKeyword(KeywordGranularity); err != nil {
296 return nil, err
297 }
298 granularity, err := p.parseDecimal(p.Pos())
299 if err != nil {
300 return nil, err
301 }
302
303 return &TableIndex{
304 IndexPos: pos,
305 Name: name,
306 ColumnExpr: columnExpr,
307 ColumnType: columnType,
308 Granularity: granularity,
309 }, nil
310}
311
312func (p *Parser) parseAlterTableDrop(pos Pos) (AlterTableClause, error) {
313 if err := p.expectKeyword(KeywordDrop); err != nil {

Callers 2

parseTableColumnsMethod · 0.95

Calls 6

ParseNestedIdentifierMethod · 0.95
PosMethod · 0.95
parseColumnsExprMethod · 0.95
expectKeywordMethod · 0.95
parseColumnTypeMethod · 0.95
parseDecimalMethod · 0.95

Tested by

no test coverage detected