MCPcopy Index your code
hub / github.com/uber/aresdb / Interval

Method Interval

query/sql/antlrgen/sqlbase_parser.go:9026–9107  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

9024}
9025
9026func (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

Callers 2

primaryExpressionMethod · 0.95
TimeZoneSpecifierMethod · 0.95

Calls 6

Sql_stringMethod · 0.95
IntervalFieldMethod · 0.95
NewIntervalContextFunction · 0.85
LAMethod · 0.80
LTMethod · 0.80
ReportErrorMethod · 0.65

Tested by

no test coverage detected