Boo.Lang.Parser.BooParserBase.timespan_literal C# (CSharp) Method

timespan_literal() protected method

protected timespan_literal ( ) : TimeSpanLiteralExpression
return TimeSpanLiteralExpression
        protected TimeSpanLiteralExpression timespan_literal()
        {
            TimeSpanLiteralExpression tsle;

            IToken  neg = null;
            IToken  value = null;
            tsle = null;

            try {      // for error handling
            {
                switch ( LA(1) )
                {
                case SUBTRACT:
                {
                    neg = LT(1);
                    match(SUBTRACT);
                    break;
                }
                case TIMESPAN:
                {
                    break;
                }
                default:
                {
                    throw new NoViableAltException(LT(1), getFilename());
                }
                 }
            }
            value = LT(1);
            match(TIMESPAN);
            if (0==inputState.guessing)
            {

                        string val = value.getText();
                        if (neg != null) val = neg.getText() + val;
                        tsle = new TimeSpanLiteralExpression(ToLexicalInfo(value), PrimitiveParser.ParseTimeSpan(value, val));

            }
            }
            catch (RecognitionException ex)
            {
            if (0 == inputState.guessing)
            {
                reportError(ex, "timespan_literal");
                recover(ex,tokenSet_41_);
            }
            else
            {
                throw ex;
            }
            }
            return tsle;
        }
BooParserBase