func()

in shardingsphere-operator/pkg/distsql/visitor_parser/sharding/rdlstatement_parser.go [2505:2575]


func (p *RDLStatementParser) AlterDefaultShardingStrategy() (localctx IAlterDefaultShardingStrategyContext) {
	localctx = NewAlterDefaultShardingStrategyContext(p, p.GetParserRuleContext(), p.GetState())
	p.EnterRule(localctx, 20, RDLStatementParserRULE_alterDefaultShardingStrategy)
	var _la int

	defer func() {
		p.ExitRule()
	}()

	defer func() {
		if err := recover(); err != nil {
			if v, ok := err.(antlr.RecognitionException); ok {
				localctx.SetException(v)
				p.GetErrorHandler().ReportError(p, v)
				p.GetErrorHandler().Recover(p, v)
			} else {
				panic(err)
			}
		}
	}()

	p.EnterOuterAlt(localctx, 1)
	{
		p.SetState(253)
		p.Match(RDLStatementParserALTER)
	}
	{
		p.SetState(254)
		p.Match(RDLStatementParserDEFAULT)
	}
	{
		p.SetState(255)
		p.Match(RDLStatementParserSHARDING)
	}
	{
		p.SetState(256)

		var _lt = p.GetTokenStream().LT(1)

		localctx.(*AlterDefaultShardingStrategyContext).typ = _lt

		_la = p.GetTokenStream().LA(1)

		if !(_la == RDLStatementParserTABLE || _la == RDLStatementParserDATABASE) {
			var _ri = p.GetErrorHandler().RecoverInline(p)

			localctx.(*AlterDefaultShardingStrategyContext).typ = _ri
		} else {
			p.GetErrorHandler().ReportMatch(p)
			p.Consume()
		}
	}
	{
		p.SetState(257)
		p.Match(RDLStatementParserSTRATEGY)
	}
	{
		p.SetState(258)
		p.Match(RDLStatementParserLP_)
	}
	{
		p.SetState(259)
		p.ShardingStrategy()
	}
	{
		p.SetState(260)
		p.Match(RDLStatementParserRP_)
	}

	return localctx
}