Exemplo n.º 1
0
 private bool TryParseEndTime(ITokenStream ts, ref Slot resultSlot)
 {
     if (ts.CurrentToken().IsTime() && ts.PreviousToken().Value() == "-")
     {
         resultSlot.EndTime = Time.CreateTime_12HourFormat(ts.CurrentToken().Value(), ts.NextToken().Value());
         return(true);
     }
     return(false);
 }
Exemplo n.º 2
0
 private bool TryParseWeekAndVenue(ITokenStream ts, ref Slot resultSlot)
 {
     if (!ts.PreviousToken().IsPositiveNumberThatContainDecimalPoint() || !ts.NextToken().IsPossiblyVenuValue())
     {
         return(false);
     }
     resultSlot.WeekNumber = WeekNumber.Parse(ts.CurrentToken().Value());
     resultSlot.Venue      = ts.NextToken().Value();
     return(true);
 }
Exemplo n.º 3
0
 private bool TryParseStartTime(ITokenStream ts, ref Slot resultSlot)
 {
     if (!ts.CurrentToken().IsTime())
     {
         return(false);
     }
     if (!ts.PreviousToken().IsDay())
     {
         return(false);
     }
     resultSlot.StartTime = Time.CreateTime_12HourFormat(ts.CurrentToken().Value(), ts.NextToken().Value());
     return(true);
 }
Exemplo n.º 4
0
 private bool TryParseSlotNumber(ITokenStream ts, ref Slot resultSlot)
 {
     if (!ts.CurrentToken().IsPositiveInteger())
     {
         return(false);
     }
     if (!ts.PreviousToken().IsSlotType())
     {
         return(false);
     }
     resultSlot.Number = ts.CurrentToken().Value();
     return(true);
 }
Exemplo n.º 5
0
        private bool TryParseSubjectName(ITokenStream ts, ref Slot resultSlot, ref bool isReadingSubjectName)
        {
            if (isReadingSubjectName)
            {
                if (ts.CurrentToken().Value().Length != 0 && ts.CurrentToken().Value()[0] == '[')
                {
                    isReadingSubjectName = false;
                    return(true);
                }
                resultSlot.SubjectName += " " + ts.CurrentToken().Value();
                return(true);
            }

            if (ts.CurrentToken().Value() == "-" && ts.PreviousToken().IsPossiblySubjectCode())
            {
                isReadingSubjectName   = true;
                resultSlot.SubjectName = "";
                return(true);
            }

            return(false);
        }
Exemplo n.º 6
0
 protected override void ExtractToken(ITokenStream ts)
 {
     _studentId = ts.PreviousToken().Value().Trim('(', ')');
 }