()
| 9024 | } |
| 9025 | |
| 9026 | func (p *SqlBaseParser) Interval() (localctx IIntervalContext) { |
| 9027 | localctx = NewIntervalContext(p, p.GetParserRuleContext(), p.GetState()) |
| 9028 | p.EnterRule(localctx, 66, SqlBaseParserRULE_interval) |
| 9029 | var _la int |
| 9030 | |
| 9031 | defer func() { |
| 9032 | p.ExitRule() |
| 9033 | }() |
| 9034 | |
| 9035 | defer func() { |
| 9036 | if err := recover(); err != nil { |
| 9037 | if v, ok := err.(antlr.RecognitionException); ok { |
| 9038 | localctx.SetException(v) |
| 9039 | p.GetErrorHandler().ReportError(p, v) |
| 9040 | p.GetErrorHandler().Recover(p, v) |
| 9041 | } else { |
| 9042 | panic(err) |
| 9043 | } |
| 9044 | } |
| 9045 | }() |
| 9046 | |
| 9047 | p.EnterOuterAlt(localctx, 1) |
| 9048 | { |
| 9049 | p.SetState(619) |
| 9050 | p.Match(SqlBaseParserINTERVAL) |
| 9051 | } |
| 9052 | p.SetState(621) |
| 9053 | p.GetErrorHandler().Sync(p) |
| 9054 | _la = p.GetTokenStream().LA(1) |
| 9055 | |
| 9056 | if _la == SqlBaseParserPLUS || _la == SqlBaseParserMINUS { |
| 9057 | { |
| 9058 | p.SetState(620) |
| 9059 | |
| 9060 | var _lt = p.GetTokenStream().LT(1) |
| 9061 | |
| 9062 | localctx.(*IntervalContext).sign = _lt |
| 9063 | |
| 9064 | _la = p.GetTokenStream().LA(1) |
| 9065 | |
| 9066 | if !(_la == SqlBaseParserPLUS || _la == SqlBaseParserMINUS) { |
| 9067 | var _ri = p.GetErrorHandler().RecoverInline(p) |
| 9068 | |
| 9069 | localctx.(*IntervalContext).sign = _ri |
| 9070 | } else { |
| 9071 | p.GetErrorHandler().ReportMatch(p) |
| 9072 | p.Consume() |
| 9073 | } |
| 9074 | } |
| 9075 | |
| 9076 | } |
| 9077 | { |
| 9078 | p.SetState(623) |
| 9079 | p.Sql_string() |
| 9080 | } |
| 9081 | { |
| 9082 | p.SetState(624) |
| 9083 |
no test coverage detected