Home | History | Annotate | Download | only in src

Lines Matching refs:scanner

20   DateStringTokenizer<Char> scanner(&in);
74 DateToken next_unhandled_token = ParseES5DateTime(&scanner, &day, &time, &tz);
81 token = scanner.Next()) {
86 if (scanner.SkipSymbol(':')) {
87 if (scanner.SkipSymbol(':')) {
95 if (scanner.Peek().IsSymbol('.')) scanner.Next();
97 } else if (scanner.SkipSymbol('.') && time.IsExpecting(n)) {
99 if (!scanner.Peek().IsNumber()) return false;
100 int n = ReadMilliseconds(scanner.Next());
109 DateToken peek = scanner.Peek();
116 scanner.SkipSymbol('-');
127 scanner.SkipSymbol('-');
135 if (scanner.Peek().IsNumber()) return false;
144 if (scanner.Peek().IsNumber()) {
145 DateToken token = scanner.Next();
151 if (scanner.Peek().IsSymbol(':')) {
245 DateStringTokenizer<Char>* scanner, DayComposer* day, TimeComposer* time,
252 if (scanner->Peek().IsAsciiSign()) {
255 DateToken sign_token = scanner->Next();
256 if (!scanner->Peek().IsFixedLengthNumber(6)) return sign_token;
258 int year = scanner->Next().number();
261 } else if (scanner->Peek().IsFixedLengthNumber(4)) {
262 day->Add(scanner->Next().number());
264 return scanner->Next();
266 if (scanner->SkipSymbol('-')) {
267 if (!scanner->Peek().IsFixedLengthNumber(2) ||
268 !DayComposer::IsMonth(scanner->Peek().number())) return scanner->Next();
269 day->Add(scanner->Next().number());
270 if (scanner->SkipSymbol('-')) {
271 if (!scanner->Peek().IsFixedLengthNumber(2) ||
272 !DayComposer::IsDay(scanner->Peek().number())) return scanner->Next();
273 day->Add(scanner->Next().number());
277 if (!scanner->Peek().IsKeywordType(TIME_SEPARATOR)) {
278 if (!scanner->Peek().IsEndOfInput()) return scanner->Next();
281 scanner->Next();
282 if (!scanner->Peek().IsFixedLengthNumber(2) ||
283 !Between(scanner->Peek().number(), 0, 24)) {
287 bool hour_is_24 = (scanner->Peek().number() == 24);
288 time->Add(scanner->Next().number());
289 if (!scanner->SkipSymbol(':')) return DateToken::Invalid();
290 if (!scanner->Peek().IsFixedLengthNumber(2) ||
291 !TimeComposer::IsMinute(scanner->Peek().number()) ||
292 (hour_is_24 && scanner->Peek().number() > 0)) {
295 time->Add(scanner->Next().number());
296 if (scanner->SkipSymbol(':')) {
297 if (!scanner->Peek().IsFixedLengthNumber(2) ||
298 !TimeComposer::IsSecond(scanner->Peek().number()) ||
299 (hour_is_24 && scanner->Peek().number() > 0)) {
302 time->Add(scanner->Next().number());
303 if (scanner->SkipSymbol('.')) {
304 if (!scanner->Peek().IsNumber() ||
305 (hour_is_24 && scanner->Peek().number() > 0)) {
309 time->Add(ReadMilliseconds(scanner->Next()));
313 if (scanner->Peek().IsKeywordZ()) {
314 scanner->Next();
316 } else if (scanner->Peek().IsSymbol('+') ||
317 scanner->Peek().IsSymbol('-')) {
318 tz->SetSign(scanner->Next().symbol() == '+' ? 1 : -1);
319 if (scanner->Peek().IsFixedLengthNumber(4)) {
321 int hourmin = scanner->Next().number();
331 if (!scanner->Peek().IsFixedLengthNumber(2) ||
332 !TimeComposer::IsHour(scanner->Peek().number())) {
335 tz->SetAbsoluteHour(scanner->Next().number());
336 if (!scanner->SkipSymbol(':')) return DateToken::Invalid();
337 if (!scanner->Peek().IsFixedLengthNumber(2) ||
338 !TimeComposer::IsMinute(scanner->Peek().number())) {
341 tz->SetAbsoluteMinute(scanner->Next().number());
344 if (!scanner->Peek().IsEndOfInput()) return DateToken::Invalid();