Lines Matching refs:scanner
18 DateStringTokenizer<Char> scanner(&in);
72 DateToken next_unhandled_token = ParseES5DateTime(&scanner, &day, &time, &tz);
78 token = scanner.Next()) {
83 if (scanner.SkipSymbol(':')) {
84 if (scanner.SkipSymbol(':')) {
92 if (scanner.Peek().IsSymbol('.')) scanner.Next();
94 } else if (scanner.SkipSymbol('.') && time.IsExpecting(n)) {
96 if (!scanner.Peek().IsNumber()) return false;
97 int ms = ReadMilliseconds(scanner.Next());
106 DateToken peek = scanner.Peek();
112 scanner.SkipSymbol('-');
123 scanner.SkipSymbol('-');
131 if (scanner.Peek().IsNumber()) return false;
140 if (scanner.Peek().IsNumber()) {
141 DateToken next_token = scanner.Next();
147 if (scanner.Peek().IsSymbol(':')) {
238 DateStringTokenizer<Char>* scanner, DayComposer* day, TimeComposer* time,
245 if (scanner->Peek().IsAsciiSign()) {
248 DateToken sign_token = scanner->Next();
249 if (!scanner->Peek().IsFixedLengthNumber(6)) return sign_token;
251 int year = scanner->Next().number();
254 } else if (scanner->Peek().IsFixedLengthNumber(4)) {
255 day->Add(scanner->Next().number());
257 return scanner->Next();
259 if (scanner->SkipSymbol('-')) {
260 if (!scanner->Peek().IsFixedLengthNumber(2) ||
261 !DayComposer::IsMonth(scanner->Peek().number()))
262 return scanner->Next();
263 day->Add(scanner->Next().number());
264 if (scanner->SkipSymbol('-')) {
265 if (!scanner->Peek().IsFixedLengthNumber(2) ||
266 !DayComposer::IsDay(scanner->Peek().number()))
267 return scanner->Next();
268 day->Add(scanner->Next().number());
272 if (!scanner->Peek().IsKeywordType(TIME_SEPARATOR)) {
273 if (!scanner->Peek().IsEndOfInput()) return scanner->Next();
276 scanner->Next();
277 if (!scanner->Peek().IsFixedLengthNumber(2) ||
278 !Between(scanner->Peek().number(), 0, 24)) {
282 bool hour_is_24 = (scanner->Peek().number() == 24);
283 time->Add(scanner->Next().number());
284 if (!scanner->SkipSymbol(':')) return DateToken::Invalid();
285 if (!scanner->Peek().IsFixedLengthNumber(2) ||
286 !TimeComposer::IsMinute(scanner->Peek().number()) ||
287 (hour_is_24 && scanner->Peek().number() > 0)) {
290 time->Add(scanner->Next().number());
291 if (scanner->SkipSymbol(':')) {
292 if (!scanner->Peek().IsFixedLengthNumber(2) ||
293 !TimeComposer::IsSecond(scanner->Peek().number()) ||
294 (hour_is_24 && scanner->Peek().number() > 0)) {
297 time->Add(scanner->Next().number());
298 if (scanner->SkipSymbol('.')) {
299 if (!scanner->Peek().IsNumber() ||
300 (hour_is_24 && scanner->Peek().number() > 0)) {
304 time->Add(ReadMilliseconds(scanner->Next()));
308 if (scanner->Peek().IsKeywordZ()) {
309 scanner->Next();
311 } else if (scanner->Peek().IsSymbol('+') || scanner->Peek().IsSymbol('-')) {
312 tz->SetSign(scanner->Next().symbol() == '+' ? 1 : -1);
313 if (scanner->Peek().IsFixedLengthNumber(4)) {
315 int hourmin = scanner->Next().number();
325 if (!scanner->Peek().IsFixedLengthNumber(2) ||
326 !TimeComposer::IsHour(scanner->Peek().number())) {
329 tz->SetAbsoluteHour(scanner->Next().number());
330 if (!scanner->SkipSymbol(':')) return DateToken::Invalid();
331 if (!scanner->Peek().IsFixedLengthNumber(2) ||
332 !TimeComposer::IsMinute(scanner->Peek().number())) {
335 tz->SetAbsoluteMinute(scanner->Next().number());
338 if (!scanner->Peek().IsEndOfInput()) return DateToken::Invalid();