Namespace

Included Modules

Class Index [+]

Quicksearch

Mail::RFC2822Obsolete

Public Instance Methods

_nt_obs_FWS() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 413
413:     def _nt_obs_FWS
414:       start_index = index
415:       if node_cache[:obs_FWS].has_key?(index)
416:         cached = node_cache[:obs_FWS][index]
417:         if cached
418:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
419:           @index = cached.interval.end
420:         end
421:         return cached
422:       end
423: 
424:       i0, s0 = index, []
425:       s1, i1 = [], index
426:       loop do
427:         r2 = _nt_WSP
428:         if r2
429:           s1 << r2
430:         else
431:           break
432:         end
433:       end
434:       if s1.empty?
435:         @index = i1
436:         r1 = nil
437:       else
438:         r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
439:       end
440:       s0 << r1
441:       if r1
442:         s3, i3 = [], index
443:         loop do
444:           i4, s4 = index, []
445:           r5 = _nt_CRLF
446:           s4 << r5
447:           if r5
448:             s6, i6 = [], index
449:             loop do
450:               r7 = _nt_WSP
451:               if r7
452:                 s6 << r7
453:               else
454:                 break
455:               end
456:             end
457:             if s6.empty?
458:               @index = i6
459:               r6 = nil
460:             else
461:               r6 = instantiate_node(SyntaxNode,input, i6...index, s6)
462:             end
463:             s4 << r6
464:           end
465:           if s4.last
466:             r4 = instantiate_node(SyntaxNode,input, i4...index, s4)
467:             r4.extend(ObsFWS0)
468:           else
469:             @index = i4
470:             r4 = nil
471:           end
472:           if r4
473:             s3 << r4
474:           else
475:             break
476:           end
477:         end
478:         r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
479:         s0 << r3
480:       end
481:       if s0.last
482:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
483:         r0.extend(ObsFWS1)
484:       else
485:         @index = i0
486:         r0 = nil
487:       end
488: 
489:       node_cache[:obs_FWS][start_index] = r0
490: 
491:       r0
492:     end
_nt_obs_addr_list() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1633
1633:     def _nt_obs_addr_list
1634:       start_index = index
1635:       if node_cache[:obs_addr_list].has_key?(index)
1636:         cached = node_cache[:obs_addr_list][index]
1637:         if cached
1638:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1639:           @index = cached.interval.end
1640:         end
1641:         return cached
1642:       end
1643: 
1644:       i0, s0 = index, []
1645:       s1, i1 = [], index
1646:       loop do
1647:         i2, s2 = index, []
1648:         r4 = _nt_address
1649:         if r4
1650:           r3 = r4
1651:         else
1652:           r3 = instantiate_node(SyntaxNode,input, index...index)
1653:         end
1654:         s2 << r3
1655:         if r3
1656:           r6 = _nt_CFWS
1657:           if r6
1658:             r5 = r6
1659:           else
1660:             r5 = instantiate_node(SyntaxNode,input, index...index)
1661:           end
1662:           s2 << r5
1663:           if r5
1664:             if has_terminal?(",", false, index)
1665:               r7 = instantiate_node(SyntaxNode,input, index...(index + 1))
1666:               @index += 1
1667:             else
1668:               terminal_parse_failure(",")
1669:               r7 = nil
1670:             end
1671:             s2 << r7
1672:             if r7
1673:               r9 = _nt_CFWS
1674:               if r9
1675:                 r8 = r9
1676:               else
1677:                 r8 = instantiate_node(SyntaxNode,input, index...index)
1678:               end
1679:               s2 << r8
1680:             end
1681:           end
1682:         end
1683:         if s2.last
1684:           r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
1685:           r2.extend(ObsAddrList0)
1686:         else
1687:           @index = i2
1688:           r2 = nil
1689:         end
1690:         if r2
1691:           s1 << r2
1692:         else
1693:           break
1694:         end
1695:       end
1696:       if s1.empty?
1697:         @index = i1
1698:         r1 = nil
1699:       else
1700:         r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
1701:       end
1702:       s0 << r1
1703:       if r1
1704:         r11 = _nt_address
1705:         if r11
1706:           r10 = r11
1707:         else
1708:           r10 = instantiate_node(SyntaxNode,input, index...index)
1709:         end
1710:         s0 << r10
1711:       end
1712:       if s0.last
1713:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1714:         r0.extend(ObsAddrList1)
1715:       else
1716:         @index = i0
1717:         r0 = nil
1718:       end
1719: 
1720:       node_cache[:obs_addr_list][start_index] = r0
1721: 
1722:       r0
1723:     end
_nt_obs_angle_addr() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1139
1139:     def _nt_obs_angle_addr
1140:       start_index = index
1141:       if node_cache[:obs_angle_addr].has_key?(index)
1142:         cached = node_cache[:obs_angle_addr][index]
1143:         if cached
1144:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1145:           @index = cached.interval.end
1146:         end
1147:         return cached
1148:       end
1149: 
1150:       i0, s0 = index, []
1151:       r2 = _nt_CFWS
1152:       if r2
1153:         r1 = r2
1154:       else
1155:         r1 = instantiate_node(SyntaxNode,input, index...index)
1156:       end
1157:       s0 << r1
1158:       if r1
1159:         if has_terminal?("<", false, index)
1160:           r3 = instantiate_node(SyntaxNode,input, index...(index + 1))
1161:           @index += 1
1162:         else
1163:           terminal_parse_failure("<")
1164:           r3 = nil
1165:         end
1166:         s0 << r3
1167:         if r3
1168:           r5 = _nt_obs_route
1169:           if r5
1170:             r4 = r5
1171:           else
1172:             r4 = instantiate_node(SyntaxNode,input, index...index)
1173:           end
1174:           s0 << r4
1175:           if r4
1176:             r6 = _nt_addr_spec
1177:             s0 << r6
1178:             if r6
1179:               if has_terminal?(">", false, index)
1180:                 r7 = instantiate_node(SyntaxNode,input, index...(index + 1))
1181:                 @index += 1
1182:               else
1183:                 terminal_parse_failure(">")
1184:                 r7 = nil
1185:               end
1186:               s0 << r7
1187:               if r7
1188:                 r9 = _nt_CFWS
1189:                 if r9
1190:                   r8 = r9
1191:                 else
1192:                   r8 = instantiate_node(SyntaxNode,input, index...index)
1193:                 end
1194:                 s0 << r8
1195:               end
1196:             end
1197:           end
1198:         end
1199:       end
1200:       if s0.last
1201:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1202:         r0.extend(ObsAngleAddr0)
1203:       else
1204:         @index = i0
1205:         r0 = nil
1206:       end
1207: 
1208:       node_cache[:obs_angle_addr][start_index] = r0
1209: 
1210:       r0
1211:     end
_nt_obs_bcc() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2324
2324:     def _nt_obs_bcc
2325:       start_index = index
2326:       if node_cache[:obs_bcc].has_key?(index)
2327:         cached = node_cache[:obs_bcc][index]
2328:         if cached
2329:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2330:           @index = cached.interval.end
2331:         end
2332:         return cached
2333:       end
2334: 
2335:       i0, s0 = index, []
2336:       if has_terminal?("Bcc", false, index)
2337:         r1 = instantiate_node(SyntaxNode,input, index...(index + 3))
2338:         @index += 3
2339:       else
2340:         terminal_parse_failure("Bcc")
2341:         r1 = nil
2342:       end
2343:       s0 << r1
2344:       if r1
2345:         s2, i2 = [], index
2346:         loop do
2347:           r3 = _nt_WSP
2348:           if r3
2349:             s2 << r3
2350:           else
2351:             break
2352:           end
2353:         end
2354:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2355:         s0 << r2
2356:         if r2
2357:           if has_terminal?(":", false, index)
2358:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2359:             @index += 1
2360:           else
2361:             terminal_parse_failure(":")
2362:             r4 = nil
2363:           end
2364:           s0 << r4
2365:           if r4
2366:             i5 = index
2367:             r6 = _nt_address_list
2368:             if r6
2369:               r5 = r6
2370:             else
2371:               r8 = _nt_CFWS
2372:               if r8
2373:                 r7 = r8
2374:               else
2375:                 r7 = instantiate_node(SyntaxNode,input, index...index)
2376:               end
2377:               if r7
2378:                 r5 = r7
2379:               else
2380:                 @index = i5
2381:                 r5 = nil
2382:               end
2383:             end
2384:             s0 << r5
2385:             if r5
2386:               r9 = _nt_CRLF
2387:               s0 << r9
2388:             end
2389:           end
2390:         end
2391:       end
2392:       if s0.last
2393:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2394:         r0.extend(ObsBcc0)
2395:       else
2396:         @index = i0
2397:         r0 = nil
2398:       end
2399: 
2400:       node_cache[:obs_bcc][start_index] = r0
2401: 
2402:       r0
2403:     end
_nt_obs_cc() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2254
2254:     def _nt_obs_cc
2255:       start_index = index
2256:       if node_cache[:obs_cc].has_key?(index)
2257:         cached = node_cache[:obs_cc][index]
2258:         if cached
2259:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2260:           @index = cached.interval.end
2261:         end
2262:         return cached
2263:       end
2264: 
2265:       i0, s0 = index, []
2266:       if has_terminal?("Cc", false, index)
2267:         r1 = instantiate_node(SyntaxNode,input, index...(index + 2))
2268:         @index += 2
2269:       else
2270:         terminal_parse_failure("Cc")
2271:         r1 = nil
2272:       end
2273:       s0 << r1
2274:       if r1
2275:         s2, i2 = [], index
2276:         loop do
2277:           r3 = _nt_WSP
2278:           if r3
2279:             s2 << r3
2280:           else
2281:             break
2282:           end
2283:         end
2284:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2285:         s0 << r2
2286:         if r2
2287:           if has_terminal?(":", false, index)
2288:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2289:             @index += 1
2290:           else
2291:             terminal_parse_failure(":")
2292:             r4 = nil
2293:           end
2294:           s0 << r4
2295:           if r4
2296:             r5 = _nt_address_list
2297:             s0 << r5
2298:             if r5
2299:               r6 = _nt_CRLF
2300:               s0 << r6
2301:             end
2302:           end
2303:         end
2304:       end
2305:       if s0.last
2306:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2307:         r0.extend(ObsCc0)
2308:       else
2309:         @index = i0
2310:         r0 = nil
2311:       end
2312: 
2313:       node_cache[:obs_cc][start_index] = r0
2314: 
2315:       r0
2316:     end
_nt_obs_char() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 164
164:     def _nt_obs_char
165:       start_index = index
166:       if node_cache[:obs_char].has_key?(index)
167:         cached = node_cache[:obs_char][index]
168:         if cached
169:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
170:           @index = cached.interval.end
171:         end
172:         return cached
173:       end
174: 
175:       i0 = index
176:       if has_terminal?('\G[\x00-\x09]', true, index)
177:         r1 = true
178:         @index += 1
179:       else
180:         r1 = nil
181:       end
182:       if r1
183:         r0 = r1
184:       else
185:         if has_terminal?('\G[\x0B-\x0C]', true, index)
186:           r2 = true
187:           @index += 1
188:         else
189:           r2 = nil
190:         end
191:         if r2
192:           r0 = r2
193:         else
194:           if has_terminal?('\G[\x0E-\x7F]', true, index)
195:             r3 = true
196:             @index += 1
197:           else
198:             r3 = nil
199:           end
200:           if r3
201:             r0 = r3
202:           else
203:             @index = i0
204:             r0 = nil
205:           end
206:         end
207:       end
208: 
209:       node_cache[:obs_char][start_index] = r0
210: 
211:       r0
212:     end
_nt_obs_comments() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2781
2781:     def _nt_obs_comments
2782:       start_index = index
2783:       if node_cache[:obs_comments].has_key?(index)
2784:         cached = node_cache[:obs_comments][index]
2785:         if cached
2786:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2787:           @index = cached.interval.end
2788:         end
2789:         return cached
2790:       end
2791: 
2792:       i0, s0 = index, []
2793:       if has_terminal?("Comments", false, index)
2794:         r1 = instantiate_node(SyntaxNode,input, index...(index + 8))
2795:         @index += 8
2796:       else
2797:         terminal_parse_failure("Comments")
2798:         r1 = nil
2799:       end
2800:       s0 << r1
2801:       if r1
2802:         s2, i2 = [], index
2803:         loop do
2804:           r3 = _nt_WSP
2805:           if r3
2806:             s2 << r3
2807:           else
2808:             break
2809:           end
2810:         end
2811:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2812:         s0 << r2
2813:         if r2
2814:           if has_terminal?(":", false, index)
2815:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2816:             @index += 1
2817:           else
2818:             terminal_parse_failure(":")
2819:             r4 = nil
2820:           end
2821:           s0 << r4
2822:           if r4
2823:             r5 = _nt_unstructured
2824:             s0 << r5
2825:             if r5
2826:               r6 = _nt_CRLF
2827:               s0 << r6
2828:             end
2829:           end
2830:         end
2831:       end
2832:       if s0.last
2833:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2834:         r0.extend(ObsComments0)
2835:       else
2836:         @index = i0
2837:         r0 = nil
2838:       end
2839: 
2840:       node_cache[:obs_comments][start_index] = r0
2841: 
2842:       r0
2843:     end
_nt_obs_day() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 679
679:     def _nt_obs_day
680:       start_index = index
681:       if node_cache[:obs_day].has_key?(index)
682:         cached = node_cache[:obs_day][index]
683:         if cached
684:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
685:           @index = cached.interval.end
686:         end
687:         return cached
688:       end
689: 
690:       i0, s0 = index, []
691:       r2 = _nt_CFWS
692:       if r2
693:         r1 = r2
694:       else
695:         r1 = instantiate_node(SyntaxNode,input, index...index)
696:       end
697:       s0 << r1
698:       if r1
699:         i3 = index
700:         r4 = _nt_DIGIT
701:         if r4
702:           r3 = r4
703:         else
704:           i5, s5 = index, []
705:           r6 = _nt_DIGIT
706:           s5 << r6
707:           if r6
708:             r7 = _nt_DIGIT
709:             s5 << r7
710:           end
711:           if s5.last
712:             r5 = instantiate_node(SyntaxNode,input, i5...index, s5)
713:             r5.extend(ObsDay0)
714:           else
715:             @index = i5
716:             r5 = nil
717:           end
718:           if r5
719:             r3 = r5
720:           else
721:             @index = i3
722:             r3 = nil
723:           end
724:         end
725:         s0 << r3
726:         if r3
727:           r9 = _nt_CFWS
728:           if r9
729:             r8 = r9
730:           else
731:             r8 = instantiate_node(SyntaxNode,input, index...index)
732:           end
733:           s0 << r8
734:         end
735:       end
736:       if s0.last
737:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
738:         r0.extend(ObsDay1)
739:       else
740:         @index = i0
741:         r0 = nil
742:       end
743: 
744:       node_cache[:obs_day][start_index] = r0
745: 
746:       r0
747:     end
_nt_obs_day_of_week() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 501
501:     def _nt_obs_day_of_week
502:       start_index = index
503:       if node_cache[:obs_day_of_week].has_key?(index)
504:         cached = node_cache[:obs_day_of_week][index]
505:         if cached
506:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
507:           @index = cached.interval.end
508:         end
509:         return cached
510:       end
511: 
512:       i0, s0 = index, []
513:       r2 = _nt_CFWS
514:       if r2
515:         r1 = r2
516:       else
517:         r1 = instantiate_node(SyntaxNode,input, index...index)
518:       end
519:       s0 << r1
520:       if r1
521:         r3 = _nt_day_name
522:         s0 << r3
523:         if r3
524:           r5 = _nt_CFWS
525:           if r5
526:             r4 = r5
527:           else
528:             r4 = instantiate_node(SyntaxNode,input, index...index)
529:           end
530:           s0 << r4
531:         end
532:       end
533:       if s0.last
534:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
535:         r0.extend(ObsDayOfWeek0)
536:       else
537:         @index = i0
538:         r0 = nil
539:       end
540: 
541:       node_cache[:obs_day_of_week][start_index] = r0
542: 
543:       r0
544:     end
_nt_obs_domain() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1470
1470:     def _nt_obs_domain
1471:       start_index = index
1472:       if node_cache[:obs_domain].has_key?(index)
1473:         cached = node_cache[:obs_domain][index]
1474:         if cached
1475:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1476:           @index = cached.interval.end
1477:         end
1478:         return cached
1479:       end
1480: 
1481:       i0, s0 = index, []
1482:       r1 = _nt_atom
1483:       s0 << r1
1484:       if r1
1485:         s2, i2 = [], index
1486:         loop do
1487:           i3, s3 = index, []
1488:           if has_terminal?(".", false, index)
1489:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
1490:             @index += 1
1491:           else
1492:             terminal_parse_failure(".")
1493:             r4 = nil
1494:           end
1495:           s3 << r4
1496:           if r4
1497:             r5 = _nt_atom
1498:             s3 << r5
1499:           end
1500:           if s3.last
1501:             r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
1502:             r3.extend(ObsDomain0)
1503:           else
1504:             @index = i3
1505:             r3 = nil
1506:           end
1507:           if r3
1508:             s2 << r3
1509:           else
1510:             break
1511:           end
1512:         end
1513:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
1514:         s0 << r2
1515:       end
1516:       if s0.last
1517:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1518:         r0.extend(ObsDomain1)
1519:       else
1520:         @index = i0
1521:         r0 = nil
1522:       end
1523: 
1524:       node_cache[:obs_domain][start_index] = r0
1525: 
1526:       r0
1527:     end
_nt_obs_domain_list() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1288
1288:     def _nt_obs_domain_list
1289:       start_index = index
1290:       if node_cache[:obs_domain_list].has_key?(index)
1291:         cached = node_cache[:obs_domain_list][index]
1292:         if cached
1293:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1294:           @index = cached.interval.end
1295:         end
1296:         return cached
1297:       end
1298: 
1299:       i0, s0 = index, []
1300:       if has_terminal?("@", false, index)
1301:         r1 = instantiate_node(SyntaxNode,input, index...(index + 1))
1302:         @index += 1
1303:       else
1304:         terminal_parse_failure("@")
1305:         r1 = nil
1306:       end
1307:       s0 << r1
1308:       if r1
1309:         r2 = _nt_domain
1310:         s0 << r2
1311:         if r2
1312:           s3, i3 = [], index
1313:           loop do
1314:             i4, s4 = index, []
1315:             s5, i5 = [], index
1316:             loop do
1317:               if has_terminal?(",", false, index)
1318:                 r6 = instantiate_node(SyntaxNode,input, index...(index + 1))
1319:                 @index += 1
1320:               else
1321:                 terminal_parse_failure(",")
1322:                 r6 = nil
1323:               end
1324:               if r6
1325:                 s5 << r6
1326:               else
1327:                 break
1328:               end
1329:             end
1330:             r5 = instantiate_node(SyntaxNode,input, i5...index, s5)
1331:             s4 << r5
1332:             if r5
1333:               r8 = _nt_CFWS
1334:               if r8
1335:                 r7 = r8
1336:               else
1337:                 r7 = instantiate_node(SyntaxNode,input, index...index)
1338:               end
1339:               s4 << r7
1340:               if r7
1341:                 if has_terminal?("@", false, index)
1342:                   r9 = instantiate_node(SyntaxNode,input, index...(index + 1))
1343:                   @index += 1
1344:                 else
1345:                   terminal_parse_failure("@")
1346:                   r9 = nil
1347:                 end
1348:                 s4 << r9
1349:                 if r9
1350:                   r10 = _nt_domain
1351:                   s4 << r10
1352:                 end
1353:               end
1354:             end
1355:             if s4.last
1356:               r4 = instantiate_node(SyntaxNode,input, i4...index, s4)
1357:               r4.extend(ObsDomainList0)
1358:             else
1359:               @index = i4
1360:               r4 = nil
1361:             end
1362:             if r4
1363:               s3 << r4
1364:             else
1365:               break
1366:             end
1367:           end
1368:           r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
1369:           s0 << r3
1370:         end
1371:       end
1372:       if s0.last
1373:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1374:         r0.extend(ObsDomainList1)
1375:       else
1376:         @index = i0
1377:         r0 = nil
1378:       end
1379: 
1380:       node_cache[:obs_domain_list][start_index] = r0
1381: 
1382:       r0
1383:     end
_nt_obs_fields() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1725
1725:     def _nt_obs_fields
1726:       start_index = index
1727:       if node_cache[:obs_fields].has_key?(index)
1728:         cached = node_cache[:obs_fields][index]
1729:         if cached
1730:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1731:           @index = cached.interval.end
1732:         end
1733:         return cached
1734:       end
1735: 
1736:       s0, i0 = [], index
1737:       loop do
1738:         i1 = index
1739:         r2 = _nt_obs_return
1740:         if r2
1741:           r1 = r2
1742:         else
1743:           r3 = _nt_obs_received
1744:           if r3
1745:             r1 = r3
1746:           else
1747:             r4 = _nt_obs_orig_date
1748:             if r4
1749:               r1 = r4
1750:             else
1751:               r5 = _nt_obs_from
1752:               if r5
1753:                 r1 = r5
1754:               else
1755:                 r6 = _nt_obs_sender
1756:                 if r6
1757:                   r1 = r6
1758:                 else
1759:                   r7 = _nt_obs_reply_to
1760:                   if r7
1761:                     r1 = r7
1762:                   else
1763:                     r8 = _nt_obs_to
1764:                     if r8
1765:                       r1 = r8
1766:                     else
1767:                       r9 = _nt_obs_cc
1768:                       if r9
1769:                         r1 = r9
1770:                       else
1771:                         r10 = _nt_obs_bcc
1772:                         if r10
1773:                           r1 = r10
1774:                         else
1775:                           r11 = _nt_obs_message_id
1776:                           if r11
1777:                             r1 = r11
1778:                           else
1779:                             r12 = _nt_obs_in_reply_to
1780:                             if r12
1781:                               r1 = r12
1782:                             else
1783:                               r13 = _nt_obs_references
1784:                               if r13
1785:                                 r1 = r13
1786:                               else
1787:                                 r14 = _nt_obs_subject
1788:                                 if r14
1789:                                   r1 = r14
1790:                                 else
1791:                                   r15 = _nt_obs_comments
1792:                                   if r15
1793:                                     r1 = r15
1794:                                   else
1795:                                     r16 = _nt_obs_keywords
1796:                                     if r16
1797:                                       r1 = r16
1798:                                     else
1799:                                       r17 = _nt_obs_resent_date
1800:                                       if r17
1801:                                         r1 = r17
1802:                                       else
1803:                                         r18 = _nt_obs_resent_from
1804:                                         if r18
1805:                                           r1 = r18
1806:                                         else
1807:                                           r19 = _nt_obs_resent_send
1808:                                           if r19
1809:                                             r1 = r19
1810:                                           else
1811:                                             r20 = _nt_obs_resent_rply
1812:                                             if r20
1813:                                               r1 = r20
1814:                                             else
1815:                                               r21 = _nt_obs_resent_to
1816:                                               if r21
1817:                                                 r1 = r21
1818:                                               else
1819:                                                 r22 = _nt_obs_resent_cc
1820:                                                 if r22
1821:                                                   r1 = r22
1822:                                                 else
1823:                                                   r23 = _nt_obs_resent_bcc
1824:                                                   if r23
1825:                                                     r1 = r23
1826:                                                   else
1827:                                                     r24 = _nt_obs_resent_mid
1828:                                                     if r24
1829:                                                       r1 = r24
1830:                                                     else
1831:                                                       r25 = _nt_obs_optional
1832:                                                       if r25
1833:                                                         r1 = r25
1834:                                                       else
1835:                                                         @index = i1
1836:                                                         r1 = nil
1837:                                                       end
1838:                                                     end
1839:                                                   end
1840:                                                 end
1841:                                               end
1842:                                             end
1843:                                           end
1844:                                         end
1845:                                       end
1846:                                     end
1847:                                   end
1848:                                 end
1849:                               end
1850:                             end
1851:                           end
1852:                         end
1853:                       end
1854:                     end
1855:                   end
1856:                 end
1857:               end
1858:             end
1859:           end
1860:         end
1861:         if r1
1862:           s0 << r1
1863:         else
1864:           break
1865:         end
1866:       end
1867:       r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1868: 
1869:       node_cache[:obs_fields][start_index] = r0
1870: 
1871:       r0
1872:     end
_nt_obs_from() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1958
1958:     def _nt_obs_from
1959:       start_index = index
1960:       if node_cache[:obs_from].has_key?(index)
1961:         cached = node_cache[:obs_from][index]
1962:         if cached
1963:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1964:           @index = cached.interval.end
1965:         end
1966:         return cached
1967:       end
1968: 
1969:       i0, s0 = index, []
1970:       if has_terminal?("From", false, index)
1971:         r1 = instantiate_node(SyntaxNode,input, index...(index + 4))
1972:         @index += 4
1973:       else
1974:         terminal_parse_failure("From")
1975:         r1 = nil
1976:       end
1977:       s0 << r1
1978:       if r1
1979:         s2, i2 = [], index
1980:         loop do
1981:           r3 = _nt_WSP
1982:           if r3
1983:             s2 << r3
1984:           else
1985:             break
1986:           end
1987:         end
1988:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
1989:         s0 << r2
1990:         if r2
1991:           if has_terminal?(":", false, index)
1992:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
1993:             @index += 1
1994:           else
1995:             terminal_parse_failure(":")
1996:             r4 = nil
1997:           end
1998:           s0 << r4
1999:           if r4
2000:             r5 = _nt_mailbox_list
2001:             s0 << r5
2002:             if r5
2003:               r6 = _nt_CRLF
2004:               s0 << r6
2005:             end
2006:           end
2007:         end
2008:       end
2009:       if s0.last
2010:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2011:         r0.extend(ObsFrom0)
2012:       else
2013:         @index = i0
2014:         r0 = nil
2015:       end
2016: 
2017:       node_cache[:obs_from][start_index] = r0
2018: 
2019:       r0
2020:     end
_nt_obs_hour() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 762
762:     def _nt_obs_hour
763:       start_index = index
764:       if node_cache[:obs_hour].has_key?(index)
765:         cached = node_cache[:obs_hour][index]
766:         if cached
767:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
768:           @index = cached.interval.end
769:         end
770:         return cached
771:       end
772: 
773:       i0, s0 = index, []
774:       r2 = _nt_CFWS
775:       if r2
776:         r1 = r2
777:       else
778:         r1 = instantiate_node(SyntaxNode,input, index...index)
779:       end
780:       s0 << r1
781:       if r1
782:         i3, s3 = index, []
783:         r4 = _nt_DIGIT
784:         s3 << r4
785:         if r4
786:           r5 = _nt_DIGIT
787:           s3 << r5
788:         end
789:         if s3.last
790:           r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
791:           r3.extend(ObsHour0)
792:         else
793:           @index = i3
794:           r3 = nil
795:         end
796:         s0 << r3
797:         if r3
798:           r7 = _nt_CFWS
799:           if r7
800:             r6 = r7
801:           else
802:             r6 = instantiate_node(SyntaxNode,input, index...index)
803:           end
804:           s0 << r6
805:         end
806:       end
807:       if s0.last
808:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
809:         r0.extend(ObsHour1)
810:       else
811:         @index = i0
812:         r0 = nil
813:       end
814: 
815:       node_cache[:obs_hour][start_index] = r0
816: 
817:       r0
818:     end
_nt_obs_id_left() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2661
2661:     def _nt_obs_id_left
2662:       start_index = index
2663:       if node_cache[:obs_id_left].has_key?(index)
2664:         cached = node_cache[:obs_id_left][index]
2665:         if cached
2666:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2667:           @index = cached.interval.end
2668:         end
2669:         return cached
2670:       end
2671: 
2672:       r0 = _nt_local_part
2673: 
2674:       node_cache[:obs_id_left][start_index] = r0
2675: 
2676:       r0
2677:     end
_nt_obs_id_right() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2679
2679:     def _nt_obs_id_right
2680:       start_index = index
2681:       if node_cache[:obs_id_right].has_key?(index)
2682:         cached = node_cache[:obs_id_right][index]
2683:         if cached
2684:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2685:           @index = cached.interval.end
2686:         end
2687:         return cached
2688:       end
2689: 
2690:       r0 = _nt_domain
2691: 
2692:       node_cache[:obs_id_right][start_index] = r0
2693: 
2694:       r0
2695:     end
_nt_obs_in_reply_to() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2485
2485:     def _nt_obs_in_reply_to
2486:       start_index = index
2487:       if node_cache[:obs_in_reply_to].has_key?(index)
2488:         cached = node_cache[:obs_in_reply_to][index]
2489:         if cached
2490:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2491:           @index = cached.interval.end
2492:         end
2493:         return cached
2494:       end
2495: 
2496:       i0, s0 = index, []
2497:       if has_terminal?("In-Reply-To", false, index)
2498:         r1 = instantiate_node(SyntaxNode,input, index...(index + 11))
2499:         @index += 11
2500:       else
2501:         terminal_parse_failure("In-Reply-To")
2502:         r1 = nil
2503:       end
2504:       s0 << r1
2505:       if r1
2506:         s2, i2 = [], index
2507:         loop do
2508:           r3 = _nt_WSP
2509:           if r3
2510:             s2 << r3
2511:           else
2512:             break
2513:           end
2514:         end
2515:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2516:         s0 << r2
2517:         if r2
2518:           if has_terminal?(":", false, index)
2519:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2520:             @index += 1
2521:           else
2522:             terminal_parse_failure(":")
2523:             r4 = nil
2524:           end
2525:           s0 << r4
2526:           if r4
2527:             s5, i5 = [], index
2528:             loop do
2529:               i6 = index
2530:               r7 = _nt_phrase
2531:               if r7
2532:                 r6 = r7
2533:               else
2534:                 r8 = _nt_msg_id
2535:                 if r8
2536:                   r6 = r8
2537:                 else
2538:                   @index = i6
2539:                   r6 = nil
2540:                 end
2541:               end
2542:               if r6
2543:                 s5 << r6
2544:               else
2545:                 break
2546:               end
2547:             end
2548:             r5 = instantiate_node(SyntaxNode,input, i5...index, s5)
2549:             s0 << r5
2550:             if r5
2551:               r9 = _nt_CRLF
2552:               s0 << r9
2553:             end
2554:           end
2555:         end
2556:       end
2557:       if s0.last
2558:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2559:         r0.extend(ObsInReplyTo0)
2560:       else
2561:         @index = i0
2562:         r0 = nil
2563:       end
2564: 
2565:       node_cache[:obs_in_reply_to][start_index] = r0
2566: 
2567:       r0
2568:     end
_nt_obs_keywords() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2855
2855:     def _nt_obs_keywords
2856:       start_index = index
2857:       if node_cache[:obs_keywords].has_key?(index)
2858:         cached = node_cache[:obs_keywords][index]
2859:         if cached
2860:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2861:           @index = cached.interval.end
2862:         end
2863:         return cached
2864:       end
2865: 
2866:       i0, s0 = index, []
2867:       if has_terminal?("Keywords", false, index)
2868:         r1 = instantiate_node(SyntaxNode,input, index...(index + 8))
2869:         @index += 8
2870:       else
2871:         terminal_parse_failure("Keywords")
2872:         r1 = nil
2873:       end
2874:       s0 << r1
2875:       if r1
2876:         s2, i2 = [], index
2877:         loop do
2878:           r3 = _nt_WSP
2879:           if r3
2880:             s2 << r3
2881:           else
2882:             break
2883:           end
2884:         end
2885:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2886:         s0 << r2
2887:         if r2
2888:           if has_terminal?(":", false, index)
2889:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2890:             @index += 1
2891:           else
2892:             terminal_parse_failure(":")
2893:             r4 = nil
2894:           end
2895:           s0 << r4
2896:           if r4
2897:             r5 = _nt_obs_phrase_list
2898:             s0 << r5
2899:             if r5
2900:               r6 = _nt_CRLF
2901:               s0 << r6
2902:             end
2903:           end
2904:         end
2905:       end
2906:       if s0.last
2907:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2908:         r0.extend(ObsKeywords0)
2909:       else
2910:         @index = i0
2911:         r0 = nil
2912:       end
2913: 
2914:       node_cache[:obs_keywords][start_index] = r0
2915: 
2916:       r0
2917:     end
_nt_obs_local_part() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1398
1398:     def _nt_obs_local_part
1399:       start_index = index
1400:       if node_cache[:obs_local_part].has_key?(index)
1401:         cached = node_cache[:obs_local_part][index]
1402:         if cached
1403:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1404:           @index = cached.interval.end
1405:         end
1406:         return cached
1407:       end
1408: 
1409:       i0, s0 = index, []
1410:       r1 = _nt_word
1411:       s0 << r1
1412:       if r1
1413:         s2, i2 = [], index
1414:         loop do
1415:           i3, s3 = index, []
1416:           if has_terminal?(".", false, index)
1417:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
1418:             @index += 1
1419:           else
1420:             terminal_parse_failure(".")
1421:             r4 = nil
1422:           end
1423:           s3 << r4
1424:           if r4
1425:             r5 = _nt_word
1426:             s3 << r5
1427:           end
1428:           if s3.last
1429:             r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
1430:             r3.extend(ObsLocalPart0)
1431:           else
1432:             @index = i3
1433:             r3 = nil
1434:           end
1435:           if r3
1436:             s2 << r3
1437:           else
1438:             break
1439:           end
1440:         end
1441:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
1442:         s0 << r2
1443:       end
1444:       if s0.last
1445:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1446:         r0.extend(ObsLocalPart1)
1447:       else
1448:         @index = i0
1449:         r0 = nil
1450:       end
1451: 
1452:       node_cache[:obs_local_part][start_index] = r0
1453: 
1454:       r0
1455:     end
_nt_obs_mbox_list() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1535
1535:     def _nt_obs_mbox_list
1536:       start_index = index
1537:       if node_cache[:obs_mbox_list].has_key?(index)
1538:         cached = node_cache[:obs_mbox_list][index]
1539:         if cached
1540:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1541:           @index = cached.interval.end
1542:         end
1543:         return cached
1544:       end
1545: 
1546:       i0, s0 = index, []
1547:       s1, i1 = [], index
1548:       loop do
1549:         i2, s2 = index, []
1550:         r4 = _nt_mailbox
1551:         if r4
1552:           r3 = r4
1553:         else
1554:           r3 = instantiate_node(SyntaxNode,input, index...index)
1555:         end
1556:         s2 << r3
1557:         if r3
1558:           r6 = _nt_CFWS
1559:           if r6
1560:             r5 = r6
1561:           else
1562:             r5 = instantiate_node(SyntaxNode,input, index...index)
1563:           end
1564:           s2 << r5
1565:           if r5
1566:             if has_terminal?(",", false, index)
1567:               r7 = instantiate_node(SyntaxNode,input, index...(index + 1))
1568:               @index += 1
1569:             else
1570:               terminal_parse_failure(",")
1571:               r7 = nil
1572:             end
1573:             s2 << r7
1574:             if r7
1575:               r9 = _nt_CFWS
1576:               if r9
1577:                 r8 = r9
1578:               else
1579:                 r8 = instantiate_node(SyntaxNode,input, index...index)
1580:               end
1581:               s2 << r8
1582:             end
1583:           end
1584:         end
1585:         if s2.last
1586:           r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
1587:           r2.extend(ObsMboxList0)
1588:         else
1589:           @index = i2
1590:           r2 = nil
1591:         end
1592:         if r2
1593:           s1 << r2
1594:         else
1595:           break
1596:         end
1597:       end
1598:       if s1.empty?
1599:         @index = i1
1600:         r1 = nil
1601:       else
1602:         r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
1603:       end
1604:       s0 << r1
1605:       if r1
1606:         r11 = _nt_mailbox
1607:         if r11
1608:           r10 = r11
1609:         else
1610:           r10 = instantiate_node(SyntaxNode,input, index...index)
1611:         end
1612:         s0 << r10
1613:       end
1614:       if s0.last
1615:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1616:         r0.extend(ObsMboxList1)
1617:       else
1618:         @index = i0
1619:         r0 = nil
1620:       end
1621: 
1622:       node_cache[:obs_mbox_list][start_index] = r0
1623: 
1624:       r0
1625:     end
_nt_obs_message_id() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2415
2415:     def _nt_obs_message_id
2416:       start_index = index
2417:       if node_cache[:obs_message_id].has_key?(index)
2418:         cached = node_cache[:obs_message_id][index]
2419:         if cached
2420:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2421:           @index = cached.interval.end
2422:         end
2423:         return cached
2424:       end
2425: 
2426:       i0, s0 = index, []
2427:       if has_terminal?("Message-ID", false, index)
2428:         r1 = instantiate_node(SyntaxNode,input, index...(index + 10))
2429:         @index += 10
2430:       else
2431:         terminal_parse_failure("Message-ID")
2432:         r1 = nil
2433:       end
2434:       s0 << r1
2435:       if r1
2436:         s2, i2 = [], index
2437:         loop do
2438:           r3 = _nt_WSP
2439:           if r3
2440:             s2 << r3
2441:           else
2442:             break
2443:           end
2444:         end
2445:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2446:         s0 << r2
2447:         if r2
2448:           if has_terminal?(":", false, index)
2449:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2450:             @index += 1
2451:           else
2452:             terminal_parse_failure(":")
2453:             r4 = nil
2454:           end
2455:           s0 << r4
2456:           if r4
2457:             r5 = _nt_msg_id
2458:             s0 << r5
2459:             if r5
2460:               r6 = _nt_CRLF
2461:               s0 << r6
2462:             end
2463:           end
2464:         end
2465:       end
2466:       if s0.last
2467:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2468:         r0.extend(ObsMessageId0)
2469:       else
2470:         @index = i0
2471:         r0 = nil
2472:       end
2473: 
2474:       node_cache[:obs_message_id][start_index] = r0
2475: 
2476:       r0
2477:     end
_nt_obs_minute() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 833
833:     def _nt_obs_minute
834:       start_index = index
835:       if node_cache[:obs_minute].has_key?(index)
836:         cached = node_cache[:obs_minute][index]
837:         if cached
838:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
839:           @index = cached.interval.end
840:         end
841:         return cached
842:       end
843: 
844:       i0, s0 = index, []
845:       r2 = _nt_CFWS
846:       if r2
847:         r1 = r2
848:       else
849:         r1 = instantiate_node(SyntaxNode,input, index...index)
850:       end
851:       s0 << r1
852:       if r1
853:         i3, s3 = index, []
854:         r4 = _nt_DIGIT
855:         s3 << r4
856:         if r4
857:           r5 = _nt_DIGIT
858:           s3 << r5
859:         end
860:         if s3.last
861:           r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
862:           r3.extend(ObsMinute0)
863:         else
864:           @index = i3
865:           r3 = nil
866:         end
867:         s0 << r3
868:         if r3
869:           r7 = _nt_CFWS
870:           if r7
871:             r6 = r7
872:           else
873:             r6 = instantiate_node(SyntaxNode,input, index...index)
874:           end
875:           s0 << r6
876:         end
877:       end
878:       if s0.last
879:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
880:         r0.extend(ObsMinute1)
881:       else
882:         @index = i0
883:         r0 = nil
884:       end
885: 
886:       node_cache[:obs_minute][start_index] = r0
887: 
888:       r0
889:     end
_nt_obs_month() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 631
631:     def _nt_obs_month
632:       start_index = index
633:       if node_cache[:obs_month].has_key?(index)
634:         cached = node_cache[:obs_month][index]
635:         if cached
636:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
637:           @index = cached.interval.end
638:         end
639:         return cached
640:       end
641: 
642:       i0, s0 = index, []
643:       r1 = _nt_CFWS
644:       s0 << r1
645:       if r1
646:         r2 = _nt_month_name
647:         s0 << r2
648:         if r2
649:           r3 = _nt_CFWS
650:           s0 << r3
651:         end
652:       end
653:       if s0.last
654:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
655:         r0.extend(ObsMonth0)
656:       else
657:         @index = i0
658:         r0 = nil
659:       end
660: 
661:       node_cache[:obs_month][start_index] = r0
662: 
663:       r0
664:     end
_nt_obs_optional() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3704
3704:     def _nt_obs_optional
3705:       start_index = index
3706:       if node_cache[:obs_optional].has_key?(index)
3707:         cached = node_cache[:obs_optional][index]
3708:         if cached
3709:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3710:           @index = cached.interval.end
3711:         end
3712:         return cached
3713:       end
3714: 
3715:       i0, s0 = index, []
3716:       r1 = _nt_field_name
3717:       s0 << r1
3718:       if r1
3719:         s2, i2 = [], index
3720:         loop do
3721:           r3 = _nt_WSP
3722:           if r3
3723:             s2 << r3
3724:           else
3725:             break
3726:           end
3727:         end
3728:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3729:         s0 << r2
3730:         if r2
3731:           if has_terminal?(":", false, index)
3732:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3733:             @index += 1
3734:           else
3735:             terminal_parse_failure(":")
3736:             r4 = nil
3737:           end
3738:           s0 << r4
3739:           if r4
3740:             r5 = _nt_unstructured
3741:             s0 << r5
3742:             if r5
3743:               r6 = _nt_CRLF
3744:               s0 << r6
3745:             end
3746:           end
3747:         end
3748:       end
3749:       if s0.last
3750:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3751:         r0.extend(ObsOptional0)
3752:       else
3753:         @index = i0
3754:         r0 = nil
3755:       end
3756: 
3757:       node_cache[:obs_optional][start_index] = r0
3758: 
3759:       r0
3760:     end
_nt_obs_orig_date() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1884
1884:     def _nt_obs_orig_date
1885:       start_index = index
1886:       if node_cache[:obs_orig_date].has_key?(index)
1887:         cached = node_cache[:obs_orig_date][index]
1888:         if cached
1889:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1890:           @index = cached.interval.end
1891:         end
1892:         return cached
1893:       end
1894: 
1895:       i0, s0 = index, []
1896:       if has_terminal?("Date", false, index)
1897:         r1 = instantiate_node(SyntaxNode,input, index...(index + 4))
1898:         @index += 4
1899:       else
1900:         terminal_parse_failure("Date")
1901:         r1 = nil
1902:       end
1903:       s0 << r1
1904:       if r1
1905:         s2, i2 = [], index
1906:         loop do
1907:           r3 = _nt_WSP
1908:           if r3
1909:             s2 << r3
1910:           else
1911:             break
1912:           end
1913:         end
1914:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
1915:         s0 << r2
1916:         if r2
1917:           if has_terminal?(":", false, index)
1918:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
1919:             @index += 1
1920:           else
1921:             terminal_parse_failure(":")
1922:             r4 = nil
1923:           end
1924:           s0 << r4
1925:           if r4
1926:             r5 = _nt_date_time
1927:             s0 << r5
1928:             if r5
1929:               r6 = _nt_CRLF
1930:               s0 << r6
1931:             end
1932:           end
1933:         end
1934:       end
1935:       if s0.last
1936:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1937:         r0.extend(ObsOrigDate0)
1938:       else
1939:         @index = i0
1940:         r0 = nil
1941:       end
1942: 
1943:       node_cache[:obs_orig_date][start_index] = r0
1944: 
1945:       r0
1946:     end
_nt_obs_path() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3672
3672:     def _nt_obs_path
3673:       start_index = index
3674:       if node_cache[:obs_path].has_key?(index)
3675:         cached = node_cache[:obs_path][index]
3676:         if cached
3677:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3678:           @index = cached.interval.end
3679:         end
3680:         return cached
3681:       end
3682: 
3683:       r0 = _nt_obs_angle_addr
3684: 
3685:       node_cache[:obs_path][start_index] = r0
3686: 
3687:       r0
3688:     end
_nt_obs_phrase() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 232
232:     def _nt_obs_phrase
233:       start_index = index
234:       if node_cache[:obs_phrase].has_key?(index)
235:         cached = node_cache[:obs_phrase][index]
236:         if cached
237:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
238:           @index = cached.interval.end
239:         end
240:         return cached
241:       end
242: 
243:       s0, i0 = [], index
244:       loop do
245:         i1 = index
246:         r2 = _nt_word
247:         if r2
248:           r1 = r2
249:         else
250:           if has_terminal?(".", false, index)
251:             r3 = instantiate_node(SyntaxNode,input, index...(index + 1))
252:             @index += 1
253:           else
254:             terminal_parse_failure(".")
255:             r3 = nil
256:           end
257:           if r3
258:             r1 = r3
259:           else
260:             if has_terminal?("@", false, index)
261:               r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
262:               @index += 1
263:             else
264:               terminal_parse_failure("@")
265:               r4 = nil
266:             end
267:             if r4
268:               r1 = r4
269:             else
270:               @index = i1
271:               r1 = nil
272:             end
273:           end
274:         end
275:         if r1
276:           s0 << r1
277:         else
278:           break
279:         end
280:       end
281:       if s0.empty?
282:         @index = i0
283:         r0 = nil
284:       else
285:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
286:       end
287: 
288:       node_cache[:obs_phrase][start_index] = r0
289: 
290:       r0
291:     end
_nt_obs_phrase_list() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 299
299:     def _nt_obs_phrase_list
300:       start_index = index
301:       if node_cache[:obs_phrase_list].has_key?(index)
302:         cached = node_cache[:obs_phrase_list][index]
303:         if cached
304:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
305:           @index = cached.interval.end
306:         end
307:         return cached
308:       end
309: 
310:       i0 = index
311:       r1 = _nt_phrase
312:       if r1
313:         r0 = r1
314:       else
315:         i2, s2 = index, []
316:         s3, i3 = [], index
317:         loop do
318:           i4, s4 = index, []
319:           r6 = _nt_phrase
320:           if r6
321:             r5 = r6
322:           else
323:             r5 = instantiate_node(SyntaxNode,input, index...index)
324:           end
325:           s4 << r5
326:           if r5
327:             r8 = _nt_CFWS
328:             if r8
329:               r7 = r8
330:             else
331:               r7 = instantiate_node(SyntaxNode,input, index...index)
332:             end
333:             s4 << r7
334:             if r7
335:               if has_terminal?(",", false, index)
336:                 r9 = instantiate_node(SyntaxNode,input, index...(index + 1))
337:                 @index += 1
338:               else
339:                 terminal_parse_failure(",")
340:                 r9 = nil
341:               end
342:               s4 << r9
343:               if r9
344:                 r11 = _nt_CFWS
345:                 if r11
346:                   r10 = r11
347:                 else
348:                   r10 = instantiate_node(SyntaxNode,input, index...index)
349:                 end
350:                 s4 << r10
351:               end
352:             end
353:           end
354:           if s4.last
355:             r4 = instantiate_node(SyntaxNode,input, i4...index, s4)
356:             r4.extend(ObsPhraseList0)
357:           else
358:             @index = i4
359:             r4 = nil
360:           end
361:           if r4
362:             s3 << r4
363:           else
364:             break
365:           end
366:         end
367:         if s3.empty?
368:           @index = i3
369:           r3 = nil
370:         else
371:           r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
372:         end
373:         s2 << r3
374:         if r3
375:           r13 = _nt_phrase
376:           if r13
377:             r12 = r13
378:           else
379:             r12 = instantiate_node(SyntaxNode,input, index...index)
380:           end
381:           s2 << r12
382:         end
383:         if s2.last
384:           r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
385:           r2.extend(ObsPhraseList1)
386:         else
387:           @index = i2
388:           r2 = nil
389:         end
390:         if r2
391:           r0 = r2
392:         else
393:           @index = i0
394:           r0 = nil
395:         end
396:       end
397: 
398:       node_cache[:obs_phrase_list][start_index] = r0
399: 
400:       r0
401:     end
_nt_obs_qp() click to toggle source
    # File lib/mail/parsers/rfc2822_obsolete.rb, line 15
15:     def _nt_obs_qp
16:       start_index = index
17:       if node_cache[:obs_qp].has_key?(index)
18:         cached = node_cache[:obs_qp][index]
19:         if cached
20:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
21:           @index = cached.interval.end
22:         end
23:         return cached
24:       end
25: 
26:       i0, s0 = index, []
27:       if has_terminal?("\\", false, index)
28:         r1 = instantiate_node(SyntaxNode,input, index...(index + 1))
29:         @index += 1
30:       else
31:         terminal_parse_failure("\\")
32:         r1 = nil
33:       end
34:       s0 << r1
35:       if r1
36:         if has_terminal?('\G[\x00-\x7F]', true, index)
37:           r2 = true
38:           @index += 1
39:         else
40:           r2 = nil
41:         end
42:         s0 << r2
43:       end
44:       if s0.last
45:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
46:         r0.extend(ObsQp0)
47:       else
48:         @index = i0
49:         r0 = nil
50:       end
51: 
52:       node_cache[:obs_qp][start_index] = r0
53: 
54:       r0
55:     end
_nt_obs_received() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3608
3608:     def _nt_obs_received
3609:       start_index = index
3610:       if node_cache[:obs_received].has_key?(index)
3611:         cached = node_cache[:obs_received][index]
3612:         if cached
3613:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3614:           @index = cached.interval.end
3615:         end
3616:         return cached
3617:       end
3618: 
3619:       i0, s0 = index, []
3620:       if has_terminal?("Received", false, index)
3621:         r1 = instantiate_node(SyntaxNode,input, index...(index + 8))
3622:         @index += 8
3623:       else
3624:         terminal_parse_failure("Received")
3625:         r1 = nil
3626:       end
3627:       s0 << r1
3628:       if r1
3629:         s2, i2 = [], index
3630:         loop do
3631:           r3 = _nt_WSP
3632:           if r3
3633:             s2 << r3
3634:           else
3635:             break
3636:           end
3637:         end
3638:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3639:         s0 << r2
3640:         if r2
3641:           if has_terminal?(":", false, index)
3642:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3643:             @index += 1
3644:           else
3645:             terminal_parse_failure(":")
3646:             r4 = nil
3647:           end
3648:           s0 << r4
3649:           if r4
3650:             r5 = _nt_name_val_list
3651:             s0 << r5
3652:             if r5
3653:               r6 = _nt_CRLF
3654:               s0 << r6
3655:             end
3656:           end
3657:         end
3658:       end
3659:       if s0.last
3660:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3661:         r0.extend(ObsReceived0)
3662:       else
3663:         @index = i0
3664:         r0 = nil
3665:       end
3666: 
3667:       node_cache[:obs_received][start_index] = r0
3668: 
3669:       r0
3670:     end
_nt_obs_references() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2576
2576:     def _nt_obs_references
2577:       start_index = index
2578:       if node_cache[:obs_references].has_key?(index)
2579:         cached = node_cache[:obs_references][index]
2580:         if cached
2581:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2582:           @index = cached.interval.end
2583:         end
2584:         return cached
2585:       end
2586: 
2587:       i0, s0 = index, []
2588:       if has_terminal?("References", false, index)
2589:         r1 = instantiate_node(SyntaxNode,input, index...(index + 10))
2590:         @index += 10
2591:       else
2592:         terminal_parse_failure("References")
2593:         r1 = nil
2594:       end
2595:       s0 << r1
2596:       if r1
2597:         s2, i2 = [], index
2598:         loop do
2599:           r3 = _nt_WSP
2600:           if r3
2601:             s2 << r3
2602:           else
2603:             break
2604:           end
2605:         end
2606:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2607:         s0 << r2
2608:         if r2
2609:           if has_terminal?(":", false, index)
2610:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2611:             @index += 1
2612:           else
2613:             terminal_parse_failure(":")
2614:             r4 = nil
2615:           end
2616:           s0 << r4
2617:           if r4
2618:             s5, i5 = [], index
2619:             loop do
2620:               i6 = index
2621:               r7 = _nt_phrase
2622:               if r7
2623:                 r6 = r7
2624:               else
2625:                 r8 = _nt_msg_id
2626:                 if r8
2627:                   r6 = r8
2628:                 else
2629:                   @index = i6
2630:                   r6 = nil
2631:                 end
2632:               end
2633:               if r6
2634:                 s5 << r6
2635:               else
2636:                 break
2637:               end
2638:             end
2639:             r5 = instantiate_node(SyntaxNode,input, i5...index, s5)
2640:             s0 << r5
2641:             if r5
2642:               r9 = _nt_CRLF
2643:               s0 << r9
2644:             end
2645:           end
2646:         end
2647:       end
2648:       if s0.last
2649:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2650:         r0.extend(ObsReferences0)
2651:       else
2652:         @index = i0
2653:         r0 = nil
2654:       end
2655: 
2656:       node_cache[:obs_references][start_index] = r0
2657: 
2658:       r0
2659:     end
_nt_obs_reply_to() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2106
2106:     def _nt_obs_reply_to
2107:       start_index = index
2108:       if node_cache[:obs_reply_to].has_key?(index)
2109:         cached = node_cache[:obs_reply_to][index]
2110:         if cached
2111:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2112:           @index = cached.interval.end
2113:         end
2114:         return cached
2115:       end
2116: 
2117:       i0, s0 = index, []
2118:       if has_terminal?("Reply-To", false, index)
2119:         r1 = instantiate_node(SyntaxNode,input, index...(index + 8))
2120:         @index += 8
2121:       else
2122:         terminal_parse_failure("Reply-To")
2123:         r1 = nil
2124:       end
2125:       s0 << r1
2126:       if r1
2127:         s2, i2 = [], index
2128:         loop do
2129:           r3 = _nt_WSP
2130:           if r3
2131:             s2 << r3
2132:           else
2133:             break
2134:           end
2135:         end
2136:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2137:         s0 << r2
2138:         if r2
2139:           if has_terminal?(":", false, index)
2140:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2141:             @index += 1
2142:           else
2143:             terminal_parse_failure(":")
2144:             r4 = nil
2145:           end
2146:           s0 << r4
2147:           if r4
2148:             r5 = _nt_mailbox_list
2149:             s0 << r5
2150:             if r5
2151:               r6 = _nt_CRLF
2152:               s0 << r6
2153:             end
2154:           end
2155:         end
2156:       end
2157:       if s0.last
2158:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2159:         r0.extend(ObsReplyTo0)
2160:       else
2161:         @index = i0
2162:         r0 = nil
2163:       end
2164: 
2165:       node_cache[:obs_reply_to][start_index] = r0
2166: 
2167:       r0
2168:     end
_nt_obs_resent_bcc() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3295
3295:     def _nt_obs_resent_bcc
3296:       start_index = index
3297:       if node_cache[:obs_resent_bcc].has_key?(index)
3298:         cached = node_cache[:obs_resent_bcc][index]
3299:         if cached
3300:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3301:           @index = cached.interval.end
3302:         end
3303:         return cached
3304:       end
3305: 
3306:       i0, s0 = index, []
3307:       if has_terminal?("Resent-Bcc", false, index)
3308:         r1 = instantiate_node(SyntaxNode,input, index...(index + 10))
3309:         @index += 10
3310:       else
3311:         terminal_parse_failure("Resent-Bcc")
3312:         r1 = nil
3313:       end
3314:       s0 << r1
3315:       if r1
3316:         s2, i2 = [], index
3317:         loop do
3318:           r3 = _nt_WSP
3319:           if r3
3320:             s2 << r3
3321:           else
3322:             break
3323:           end
3324:         end
3325:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3326:         s0 << r2
3327:         if r2
3328:           if has_terminal?(":", false, index)
3329:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3330:             @index += 1
3331:           else
3332:             terminal_parse_failure(":")
3333:             r4 = nil
3334:           end
3335:           s0 << r4
3336:           if r4
3337:             i5 = index
3338:             r6 = _nt_address_list
3339:             if r6
3340:               r5 = r6
3341:             else
3342:               r8 = _nt_CFWS
3343:               if r8
3344:                 r7 = r8
3345:               else
3346:                 r7 = instantiate_node(SyntaxNode,input, index...index)
3347:               end
3348:               if r7
3349:                 r5 = r7
3350:               else
3351:                 @index = i5
3352:                 r5 = nil
3353:               end
3354:             end
3355:             s0 << r5
3356:             if r5
3357:               r9 = _nt_CRLF
3358:               s0 << r9
3359:             end
3360:           end
3361:         end
3362:       end
3363:       if s0.last
3364:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3365:         r0.extend(ObsResentBcc0)
3366:       else
3367:         @index = i0
3368:         r0 = nil
3369:       end
3370: 
3371:       node_cache[:obs_resent_bcc][start_index] = r0
3372: 
3373:       r0
3374:     end
_nt_obs_resent_cc() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3225
3225:     def _nt_obs_resent_cc
3226:       start_index = index
3227:       if node_cache[:obs_resent_cc].has_key?(index)
3228:         cached = node_cache[:obs_resent_cc][index]
3229:         if cached
3230:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3231:           @index = cached.interval.end
3232:         end
3233:         return cached
3234:       end
3235: 
3236:       i0, s0 = index, []
3237:       if has_terminal?("Resent-Cc", false, index)
3238:         r1 = instantiate_node(SyntaxNode,input, index...(index + 9))
3239:         @index += 9
3240:       else
3241:         terminal_parse_failure("Resent-Cc")
3242:         r1 = nil
3243:       end
3244:       s0 << r1
3245:       if r1
3246:         s2, i2 = [], index
3247:         loop do
3248:           r3 = _nt_WSP
3249:           if r3
3250:             s2 << r3
3251:           else
3252:             break
3253:           end
3254:         end
3255:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3256:         s0 << r2
3257:         if r2
3258:           if has_terminal?(":", false, index)
3259:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3260:             @index += 1
3261:           else
3262:             terminal_parse_failure(":")
3263:             r4 = nil
3264:           end
3265:           s0 << r4
3266:           if r4
3267:             r5 = _nt_address_list
3268:             s0 << r5
3269:             if r5
3270:               r6 = _nt_CRLF
3271:               s0 << r6
3272:             end
3273:           end
3274:         end
3275:       end
3276:       if s0.last
3277:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3278:         r0.extend(ObsResentCc0)
3279:       else
3280:         @index = i0
3281:         r0 = nil
3282:       end
3283: 
3284:       node_cache[:obs_resent_cc][start_index] = r0
3285: 
3286:       r0
3287:     end
_nt_obs_resent_date() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3077
3077:     def _nt_obs_resent_date
3078:       start_index = index
3079:       if node_cache[:obs_resent_date].has_key?(index)
3080:         cached = node_cache[:obs_resent_date][index]
3081:         if cached
3082:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3083:           @index = cached.interval.end
3084:         end
3085:         return cached
3086:       end
3087: 
3088:       i0, s0 = index, []
3089:       if has_terminal?("Resent-Date", false, index)
3090:         r1 = instantiate_node(SyntaxNode,input, index...(index + 11))
3091:         @index += 11
3092:       else
3093:         terminal_parse_failure("Resent-Date")
3094:         r1 = nil
3095:       end
3096:       s0 << r1
3097:       if r1
3098:         s2, i2 = [], index
3099:         loop do
3100:           r3 = _nt_WSP
3101:           if r3
3102:             s2 << r3
3103:           else
3104:             break
3105:           end
3106:         end
3107:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3108:         s0 << r2
3109:         if r2
3110:           if has_terminal?(":", false, index)
3111:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3112:             @index += 1
3113:           else
3114:             terminal_parse_failure(":")
3115:             r4 = nil
3116:           end
3117:           s0 << r4
3118:           if r4
3119:             r5 = _nt_date_time
3120:             s0 << r5
3121:             if r5
3122:               r6 = _nt_CRLF
3123:               s0 << r6
3124:             end
3125:           end
3126:         end
3127:       end
3128:       if s0.last
3129:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3130:         r0.extend(ObsResentDate0)
3131:       else
3132:         @index = i0
3133:         r0 = nil
3134:       end
3135: 
3136:       node_cache[:obs_resent_date][start_index] = r0
3137: 
3138:       r0
3139:     end
_nt_obs_resent_from() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2929
2929:     def _nt_obs_resent_from
2930:       start_index = index
2931:       if node_cache[:obs_resent_from].has_key?(index)
2932:         cached = node_cache[:obs_resent_from][index]
2933:         if cached
2934:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2935:           @index = cached.interval.end
2936:         end
2937:         return cached
2938:       end
2939: 
2940:       i0, s0 = index, []
2941:       if has_terminal?("Resent-From", false, index)
2942:         r1 = instantiate_node(SyntaxNode,input, index...(index + 11))
2943:         @index += 11
2944:       else
2945:         terminal_parse_failure("Resent-From")
2946:         r1 = nil
2947:       end
2948:       s0 << r1
2949:       if r1
2950:         s2, i2 = [], index
2951:         loop do
2952:           r3 = _nt_WSP
2953:           if r3
2954:             s2 << r3
2955:           else
2956:             break
2957:           end
2958:         end
2959:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2960:         s0 << r2
2961:         if r2
2962:           if has_terminal?(":", false, index)
2963:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2964:             @index += 1
2965:           else
2966:             terminal_parse_failure(":")
2967:             r4 = nil
2968:           end
2969:           s0 << r4
2970:           if r4
2971:             r5 = _nt_mailbox_list
2972:             s0 << r5
2973:             if r5
2974:               r6 = _nt_CRLF
2975:               s0 << r6
2976:             end
2977:           end
2978:         end
2979:       end
2980:       if s0.last
2981:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2982:         r0.extend(ObsResentFrom0)
2983:       else
2984:         @index = i0
2985:         r0 = nil
2986:       end
2987: 
2988:       node_cache[:obs_resent_from][start_index] = r0
2989: 
2990:       r0
2991:     end
_nt_obs_resent_mid() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3386
3386:     def _nt_obs_resent_mid
3387:       start_index = index
3388:       if node_cache[:obs_resent_mid].has_key?(index)
3389:         cached = node_cache[:obs_resent_mid][index]
3390:         if cached
3391:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3392:           @index = cached.interval.end
3393:         end
3394:         return cached
3395:       end
3396: 
3397:       i0, s0 = index, []
3398:       if has_terminal?("Resent-Message-ID", false, index)
3399:         r1 = instantiate_node(SyntaxNode,input, index...(index + 17))
3400:         @index += 17
3401:       else
3402:         terminal_parse_failure("Resent-Message-ID")
3403:         r1 = nil
3404:       end
3405:       s0 << r1
3406:       if r1
3407:         s2, i2 = [], index
3408:         loop do
3409:           r3 = _nt_WSP
3410:           if r3
3411:             s2 << r3
3412:           else
3413:             break
3414:           end
3415:         end
3416:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3417:         s0 << r2
3418:         if r2
3419:           if has_terminal?(":", false, index)
3420:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3421:             @index += 1
3422:           else
3423:             terminal_parse_failure(":")
3424:             r4 = nil
3425:           end
3426:           s0 << r4
3427:           if r4
3428:             r5 = _nt_msg_id
3429:             s0 << r5
3430:             if r5
3431:               r6 = _nt_CRLF
3432:               s0 << r6
3433:             end
3434:           end
3435:         end
3436:       end
3437:       if s0.last
3438:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3439:         r0.extend(ObsResentMid0)
3440:       else
3441:         @index = i0
3442:         r0 = nil
3443:       end
3444: 
3445:       node_cache[:obs_resent_mid][start_index] = r0
3446: 
3447:       r0
3448:     end
_nt_obs_resent_rply() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3460
3460:     def _nt_obs_resent_rply
3461:       start_index = index
3462:       if node_cache[:obs_resent_rply].has_key?(index)
3463:         cached = node_cache[:obs_resent_rply][index]
3464:         if cached
3465:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3466:           @index = cached.interval.end
3467:         end
3468:         return cached
3469:       end
3470: 
3471:       i0, s0 = index, []
3472:       if has_terminal?("Resent-Reply-To", false, index)
3473:         r1 = instantiate_node(SyntaxNode,input, index...(index + 15))
3474:         @index += 15
3475:       else
3476:         terminal_parse_failure("Resent-Reply-To")
3477:         r1 = nil
3478:       end
3479:       s0 << r1
3480:       if r1
3481:         s2, i2 = [], index
3482:         loop do
3483:           r3 = _nt_WSP
3484:           if r3
3485:             s2 << r3
3486:           else
3487:             break
3488:           end
3489:         end
3490:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3491:         s0 << r2
3492:         if r2
3493:           if has_terminal?(":", false, index)
3494:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3495:             @index += 1
3496:           else
3497:             terminal_parse_failure(":")
3498:             r4 = nil
3499:           end
3500:           s0 << r4
3501:           if r4
3502:             r5 = _nt_address_list
3503:             s0 << r5
3504:             if r5
3505:               r6 = _nt_CRLF
3506:               s0 << r6
3507:             end
3508:           end
3509:         end
3510:       end
3511:       if s0.last
3512:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3513:         r0.extend(ObsResentRply0)
3514:       else
3515:         @index = i0
3516:         r0 = nil
3517:       end
3518: 
3519:       node_cache[:obs_resent_rply][start_index] = r0
3520: 
3521:       r0
3522:     end
_nt_obs_resent_send() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3003
3003:     def _nt_obs_resent_send
3004:       start_index = index
3005:       if node_cache[:obs_resent_send].has_key?(index)
3006:         cached = node_cache[:obs_resent_send][index]
3007:         if cached
3008:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3009:           @index = cached.interval.end
3010:         end
3011:         return cached
3012:       end
3013: 
3014:       i0, s0 = index, []
3015:       if has_terminal?("Resent-Sender", false, index)
3016:         r1 = instantiate_node(SyntaxNode,input, index...(index + 13))
3017:         @index += 13
3018:       else
3019:         terminal_parse_failure("Resent-Sender")
3020:         r1 = nil
3021:       end
3022:       s0 << r1
3023:       if r1
3024:         s2, i2 = [], index
3025:         loop do
3026:           r3 = _nt_WSP
3027:           if r3
3028:             s2 << r3
3029:           else
3030:             break
3031:           end
3032:         end
3033:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3034:         s0 << r2
3035:         if r2
3036:           if has_terminal?(":", false, index)
3037:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3038:             @index += 1
3039:           else
3040:             terminal_parse_failure(":")
3041:             r4 = nil
3042:           end
3043:           s0 << r4
3044:           if r4
3045:             r5 = _nt_mailbox
3046:             s0 << r5
3047:             if r5
3048:               r6 = _nt_CRLF
3049:               s0 << r6
3050:             end
3051:           end
3052:         end
3053:       end
3054:       if s0.last
3055:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3056:         r0.extend(ObsResentSend0)
3057:       else
3058:         @index = i0
3059:         r0 = nil
3060:       end
3061: 
3062:       node_cache[:obs_resent_send][start_index] = r0
3063: 
3064:       r0
3065:     end
_nt_obs_resent_to() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3151
3151:     def _nt_obs_resent_to
3152:       start_index = index
3153:       if node_cache[:obs_resent_to].has_key?(index)
3154:         cached = node_cache[:obs_resent_to][index]
3155:         if cached
3156:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3157:           @index = cached.interval.end
3158:         end
3159:         return cached
3160:       end
3161: 
3162:       i0, s0 = index, []
3163:       if has_terminal?("Resent-To", false, index)
3164:         r1 = instantiate_node(SyntaxNode,input, index...(index + 9))
3165:         @index += 9
3166:       else
3167:         terminal_parse_failure("Resent-To")
3168:         r1 = nil
3169:       end
3170:       s0 << r1
3171:       if r1
3172:         s2, i2 = [], index
3173:         loop do
3174:           r3 = _nt_WSP
3175:           if r3
3176:             s2 << r3
3177:           else
3178:             break
3179:           end
3180:         end
3181:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3182:         s0 << r2
3183:         if r2
3184:           if has_terminal?(":", false, index)
3185:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3186:             @index += 1
3187:           else
3188:             terminal_parse_failure(":")
3189:             r4 = nil
3190:           end
3191:           s0 << r4
3192:           if r4
3193:             r5 = _nt_address_list
3194:             s0 << r5
3195:             if r5
3196:               r6 = _nt_CRLF
3197:               s0 << r6
3198:             end
3199:           end
3200:         end
3201:       end
3202:       if s0.last
3203:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3204:         r0.extend(ObsResentTo0)
3205:       else
3206:         @index = i0
3207:         r0 = nil
3208:       end
3209: 
3210:       node_cache[:obs_resent_to][start_index] = r0
3211: 
3212:       r0
3213:     end
_nt_obs_return() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 3534
3534:     def _nt_obs_return
3535:       start_index = index
3536:       if node_cache[:obs_return].has_key?(index)
3537:         cached = node_cache[:obs_return][index]
3538:         if cached
3539:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3540:           @index = cached.interval.end
3541:         end
3542:         return cached
3543:       end
3544: 
3545:       i0, s0 = index, []
3546:       if has_terminal?("Return-Path", false, index)
3547:         r1 = instantiate_node(SyntaxNode,input, index...(index + 11))
3548:         @index += 11
3549:       else
3550:         terminal_parse_failure("Return-Path")
3551:         r1 = nil
3552:       end
3553:       s0 << r1
3554:       if r1
3555:         s2, i2 = [], index
3556:         loop do
3557:           r3 = _nt_WSP
3558:           if r3
3559:             s2 << r3
3560:           else
3561:             break
3562:           end
3563:         end
3564:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
3565:         s0 << r2
3566:         if r2
3567:           if has_terminal?(":", false, index)
3568:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
3569:             @index += 1
3570:           else
3571:             terminal_parse_failure(":")
3572:             r4 = nil
3573:           end
3574:           s0 << r4
3575:           if r4
3576:             r5 = _nt_path
3577:             s0 << r5
3578:             if r5
3579:               r6 = _nt_CRLF
3580:               s0 << r6
3581:             end
3582:           end
3583:         end
3584:       end
3585:       if s0.last
3586:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3587:         r0.extend(ObsReturn0)
3588:       else
3589:         @index = i0
3590:         r0 = nil
3591:       end
3592: 
3593:       node_cache[:obs_return][start_index] = r0
3594: 
3595:       r0
3596:     end
_nt_obs_route() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 1220
1220:     def _nt_obs_route
1221:       start_index = index
1222:       if node_cache[:obs_route].has_key?(index)
1223:         cached = node_cache[:obs_route][index]
1224:         if cached
1225:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1226:           @index = cached.interval.end
1227:         end
1228:         return cached
1229:       end
1230: 
1231:       i0, s0 = index, []
1232:       r2 = _nt_CFWS
1233:       if r2
1234:         r1 = r2
1235:       else
1236:         r1 = instantiate_node(SyntaxNode,input, index...index)
1237:       end
1238:       s0 << r1
1239:       if r1
1240:         r3 = _nt_obs_domain_list
1241:         s0 << r3
1242:         if r3
1243:           if has_terminal?(":", false, index)
1244:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
1245:             @index += 1
1246:           else
1247:             terminal_parse_failure(":")
1248:             r4 = nil
1249:           end
1250:           s0 << r4
1251:           if r4
1252:             r6 = _nt_CFWS
1253:             if r6
1254:               r5 = r6
1255:             else
1256:               r5 = instantiate_node(SyntaxNode,input, index...index)
1257:             end
1258:             s0 << r5
1259:           end
1260:         end
1261:       end
1262:       if s0.last
1263:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1264:         r0.extend(ObsRoute0)
1265:       else
1266:         @index = i0
1267:         r0 = nil
1268:       end
1269: 
1270:       node_cache[:obs_route][start_index] = r0
1271: 
1272:       r0
1273:     end
_nt_obs_second() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 904
904:     def _nt_obs_second
905:       start_index = index
906:       if node_cache[:obs_second].has_key?(index)
907:         cached = node_cache[:obs_second][index]
908:         if cached
909:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
910:           @index = cached.interval.end
911:         end
912:         return cached
913:       end
914: 
915:       i0, s0 = index, []
916:       r2 = _nt_CFWS
917:       if r2
918:         r1 = r2
919:       else
920:         r1 = instantiate_node(SyntaxNode,input, index...index)
921:       end
922:       s0 << r1
923:       if r1
924:         i3, s3 = index, []
925:         r4 = _nt_DIGIT
926:         s3 << r4
927:         if r4
928:           r5 = _nt_DIGIT
929:           s3 << r5
930:         end
931:         if s3.last
932:           r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
933:           r3.extend(ObsSecond0)
934:         else
935:           @index = i3
936:           r3 = nil
937:         end
938:         s0 << r3
939:         if r3
940:           r7 = _nt_CFWS
941:           if r7
942:             r6 = r7
943:           else
944:             r6 = instantiate_node(SyntaxNode,input, index...index)
945:           end
946:           s0 << r6
947:         end
948:       end
949:       if s0.last
950:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
951:         r0.extend(ObsSecond1)
952:       else
953:         @index = i0
954:         r0 = nil
955:       end
956: 
957:       node_cache[:obs_second][start_index] = r0
958: 
959:       r0
960:     end
_nt_obs_sender() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2032
2032:     def _nt_obs_sender
2033:       start_index = index
2034:       if node_cache[:obs_sender].has_key?(index)
2035:         cached = node_cache[:obs_sender][index]
2036:         if cached
2037:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2038:           @index = cached.interval.end
2039:         end
2040:         return cached
2041:       end
2042: 
2043:       i0, s0 = index, []
2044:       if has_terminal?("Sender", false, index)
2045:         r1 = instantiate_node(SyntaxNode,input, index...(index + 6))
2046:         @index += 6
2047:       else
2048:         terminal_parse_failure("Sender")
2049:         r1 = nil
2050:       end
2051:       s0 << r1
2052:       if r1
2053:         s2, i2 = [], index
2054:         loop do
2055:           r3 = _nt_WSP
2056:           if r3
2057:             s2 << r3
2058:           else
2059:             break
2060:           end
2061:         end
2062:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2063:         s0 << r2
2064:         if r2
2065:           if has_terminal?(":", false, index)
2066:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2067:             @index += 1
2068:           else
2069:             terminal_parse_failure(":")
2070:             r4 = nil
2071:           end
2072:           s0 << r4
2073:           if r4
2074:             r5 = _nt_mailbox
2075:             s0 << r5
2076:             if r5
2077:               r6 = _nt_CRLF
2078:               s0 << r6
2079:             end
2080:           end
2081:         end
2082:       end
2083:       if s0.last
2084:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2085:         r0.extend(ObsSender0)
2086:       else
2087:         @index = i0
2088:         r0 = nil
2089:       end
2090: 
2091:       node_cache[:obs_sender][start_index] = r0
2092: 
2093:       r0
2094:     end
_nt_obs_subject() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2707
2707:     def _nt_obs_subject
2708:       start_index = index
2709:       if node_cache[:obs_subject].has_key?(index)
2710:         cached = node_cache[:obs_subject][index]
2711:         if cached
2712:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2713:           @index = cached.interval.end
2714:         end
2715:         return cached
2716:       end
2717: 
2718:       i0, s0 = index, []
2719:       if has_terminal?("Subject", false, index)
2720:         r1 = instantiate_node(SyntaxNode,input, index...(index + 7))
2721:         @index += 7
2722:       else
2723:         terminal_parse_failure("Subject")
2724:         r1 = nil
2725:       end
2726:       s0 << r1
2727:       if r1
2728:         s2, i2 = [], index
2729:         loop do
2730:           r3 = _nt_WSP
2731:           if r3
2732:             s2 << r3
2733:           else
2734:             break
2735:           end
2736:         end
2737:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2738:         s0 << r2
2739:         if r2
2740:           if has_terminal?(":", false, index)
2741:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2742:             @index += 1
2743:           else
2744:             terminal_parse_failure(":")
2745:             r4 = nil
2746:           end
2747:           s0 << r4
2748:           if r4
2749:             r5 = _nt_unstructured
2750:             s0 << r5
2751:             if r5
2752:               r6 = _nt_CRLF
2753:               s0 << r6
2754:             end
2755:           end
2756:         end
2757:       end
2758:       if s0.last
2759:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2760:         r0.extend(ObsSubject0)
2761:       else
2762:         @index = i0
2763:         r0 = nil
2764:       end
2765: 
2766:       node_cache[:obs_subject][start_index] = r0
2767: 
2768:       r0
2769:     end
_nt_obs_text() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 67
 67:     def _nt_obs_text
 68:       start_index = index
 69:       if node_cache[:obs_text].has_key?(index)
 70:         cached = node_cache[:obs_text][index]
 71:         if cached
 72:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
 73:           @index = cached.interval.end
 74:         end
 75:         return cached
 76:       end
 77: 
 78:       i0, s0 = index, []
 79:       s1, i1 = [], index
 80:       loop do
 81:         r2 = _nt_LF
 82:         if r2
 83:           s1 << r2
 84:         else
 85:           break
 86:         end
 87:       end
 88:       r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
 89:       s0 << r1
 90:       if r1
 91:         s3, i3 = [], index
 92:         loop do
 93:           r4 = _nt_CR
 94:           if r4
 95:             s3 << r4
 96:           else
 97:             break
 98:           end
 99:         end
100:         r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
101:         s0 << r3
102:         if r3
103:           s5, i5 = [], index
104:           loop do
105:             i6, s6 = index, []
106:             r7 = _nt_obs_char
107:             s6 << r7
108:             if r7
109:               s8, i8 = [], index
110:               loop do
111:                 r9 = _nt_LF
112:                 if r9
113:                   s8 << r9
114:                 else
115:                   break
116:                 end
117:               end
118:               r8 = instantiate_node(SyntaxNode,input, i8...index, s8)
119:               s6 << r8
120:               if r8
121:                 s10, i10 = [], index
122:                 loop do
123:                   r11 = _nt_CR
124:                   if r11
125:                     s10 << r11
126:                   else
127:                     break
128:                   end
129:                 end
130:                 r10 = instantiate_node(SyntaxNode,input, i10...index, s10)
131:                 s6 << r10
132:               end
133:             end
134:             if s6.last
135:               r6 = instantiate_node(SyntaxNode,input, i6...index, s6)
136:               r6.extend(ObsText0)
137:             else
138:               @index = i6
139:               r6 = nil
140:             end
141:             if r6
142:               s5 << r6
143:             else
144:               break
145:             end
146:           end
147:           r5 = instantiate_node(SyntaxNode,input, i5...index, s5)
148:           s0 << r5
149:         end
150:       end
151:       if s0.last
152:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
153:         r0.extend(ObsText1)
154:       else
155:         @index = i0
156:         r0 = nil
157:       end
158: 
159:       node_cache[:obs_text][start_index] = r0
160: 
161:       r0
162:     end
_nt_obs_to() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 2180
2180:     def _nt_obs_to
2181:       start_index = index
2182:       if node_cache[:obs_to].has_key?(index)
2183:         cached = node_cache[:obs_to][index]
2184:         if cached
2185:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
2186:           @index = cached.interval.end
2187:         end
2188:         return cached
2189:       end
2190: 
2191:       i0, s0 = index, []
2192:       if has_terminal?("To", false, index)
2193:         r1 = instantiate_node(SyntaxNode,input, index...(index + 2))
2194:         @index += 2
2195:       else
2196:         terminal_parse_failure("To")
2197:         r1 = nil
2198:       end
2199:       s0 << r1
2200:       if r1
2201:         s2, i2 = [], index
2202:         loop do
2203:           r3 = _nt_WSP
2204:           if r3
2205:             s2 << r3
2206:           else
2207:             break
2208:           end
2209:         end
2210:         r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
2211:         s0 << r2
2212:         if r2
2213:           if has_terminal?(":", false, index)
2214:             r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
2215:             @index += 1
2216:           else
2217:             terminal_parse_failure(":")
2218:             r4 = nil
2219:           end
2220:           s0 << r4
2221:           if r4
2222:             r5 = _nt_address_list
2223:             s0 << r5
2224:             if r5
2225:               r6 = _nt_CRLF
2226:               s0 << r6
2227:             end
2228:           end
2229:         end
2230:       end
2231:       if s0.last
2232:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
2233:         r0.extend(ObsTo0)
2234:       else
2235:         @index = i0
2236:         r0 = nil
2237:       end
2238: 
2239:       node_cache[:obs_to][start_index] = r0
2240: 
2241:       r0
2242:     end
_nt_obs_utext() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 214
214:     def _nt_obs_utext
215:       start_index = index
216:       if node_cache[:obs_utext].has_key?(index)
217:         cached = node_cache[:obs_utext][index]
218:         if cached
219:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
220:           @index = cached.interval.end
221:         end
222:         return cached
223:       end
224: 
225:       r0 = _nt_obs_text
226: 
227:       node_cache[:obs_utext][start_index] = r0
228: 
229:       r0
230:     end
_nt_obs_year() click to toggle source
     # File lib/mail/parsers/rfc2822_obsolete.rb, line 559
559:     def _nt_obs_year
560:       start_index = index
561:       if node_cache[:obs_year].has_key?(index)
562:         cached = node_cache[:obs_year][index]
563:         if cached
564:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
565:           @index = cached.interval.end
566:         end
567:         return cached
568:       end
569: 
570:       i0, s0 = index, []
571:       r2 = _nt_CFWS
572:       if r2
573:         r1 = r2
574:       else
575:         r1 = instantiate_node(SyntaxNode,input, index...index)
576:       end
577:       s0 << r1
578:       if r1
579:         i3, s3 = index, []
580:         r4 = _nt_DIGIT
581:         s3 << r4
582:         if r4
583:           r5 = _nt_DIGIT
584:           s3 << r5
585:         end
586:         if s3.last
587:           r3 = instantiate_node(SyntaxNode,input, i3...index, s3)
588:           r3.extend(ObsYear0)
589:         else
590:           @index = i3
591:           r3 = nil
592:         end
593:         s0 << r3
594:         if r3
595:           r7 = _nt_CFWS
596:           if r7
597:             r6 = r7
598:           else
599:             r6 = instantiate_node(SyntaxNode,input, index...index)
600:           end
601:           s0 << r6
602:         end
603:       end
604:       if s0.last
605:         r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
606:         r0.extend(ObsYear1)
607:       else
608:         @index = i0
609:         r0 = nil
610:       end
611: 
612:       node_cache[:obs_year][start_index] = r0
613: 
614:       r0
615:     end
_nt_obs_zone() click to toggle source
      # File lib/mail/parsers/rfc2822_obsolete.rb, line 962
 962:     def _nt_obs_zone
 963:       start_index = index
 964:       if node_cache[:obs_zone].has_key?(index)
 965:         cached = node_cache[:obs_zone][index]
 966:         if cached
 967:           cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
 968:           @index = cached.interval.end
 969:         end
 970:         return cached
 971:       end
 972: 
 973:       i0 = index
 974:       if has_terminal?("UT", false, index)
 975:         r1 = instantiate_node(SyntaxNode,input, index...(index + 2))
 976:         @index += 2
 977:       else
 978:         terminal_parse_failure("UT")
 979:         r1 = nil
 980:       end
 981:       if r1
 982:         r0 = r1
 983:       else
 984:         if has_terminal?("GMT", false, index)
 985:           r2 = instantiate_node(SyntaxNode,input, index...(index + 3))
 986:           @index += 3
 987:         else
 988:           terminal_parse_failure("GMT")
 989:           r2 = nil
 990:         end
 991:         if r2
 992:           r0 = r2
 993:         else
 994:           if has_terminal?("EST", false, index)
 995:             r3 = instantiate_node(SyntaxNode,input, index...(index + 3))
 996:             @index += 3
 997:           else
 998:             terminal_parse_failure("EST")
 999:             r3 = nil
1000:           end
1001:           if r3
1002:             r0 = r3
1003:           else
1004:             if has_terminal?("EDT", false, index)
1005:               r4 = instantiate_node(SyntaxNode,input, index...(index + 3))
1006:               @index += 3
1007:             else
1008:               terminal_parse_failure("EDT")
1009:               r4 = nil
1010:             end
1011:             if r4
1012:               r0 = r4
1013:             else
1014:               if has_terminal?("CST", false, index)
1015:                 r5 = instantiate_node(SyntaxNode,input, index...(index + 3))
1016:                 @index += 3
1017:               else
1018:                 terminal_parse_failure("CST")
1019:                 r5 = nil
1020:               end
1021:               if r5
1022:                 r0 = r5
1023:               else
1024:                 if has_terminal?("CDT", false, index)
1025:                   r6 = instantiate_node(SyntaxNode,input, index...(index + 3))
1026:                   @index += 3
1027:                 else
1028:                   terminal_parse_failure("CDT")
1029:                   r6 = nil
1030:                 end
1031:                 if r6
1032:                   r0 = r6
1033:                 else
1034:                   if has_terminal?("MST", false, index)
1035:                     r7 = instantiate_node(SyntaxNode,input, index...(index + 3))
1036:                     @index += 3
1037:                   else
1038:                     terminal_parse_failure("MST")
1039:                     r7 = nil
1040:                   end
1041:                   if r7
1042:                     r0 = r7
1043:                   else
1044:                     if has_terminal?("MDT", false, index)
1045:                       r8 = instantiate_node(SyntaxNode,input, index...(index + 3))
1046:                       @index += 3
1047:                     else
1048:                       terminal_parse_failure("MDT")
1049:                       r8 = nil
1050:                     end
1051:                     if r8
1052:                       r0 = r8
1053:                     else
1054:                       if has_terminal?("PST", false, index)
1055:                         r9 = instantiate_node(SyntaxNode,input, index...(index + 3))
1056:                         @index += 3
1057:                       else
1058:                         terminal_parse_failure("PST")
1059:                         r9 = nil
1060:                       end
1061:                       if r9
1062:                         r0 = r9
1063:                       else
1064:                         if has_terminal?("PDT", false, index)
1065:                           r10 = instantiate_node(SyntaxNode,input, index...(index + 3))
1066:                           @index += 3
1067:                         else
1068:                           terminal_parse_failure("PDT")
1069:                           r10 = nil
1070:                         end
1071:                         if r10
1072:                           r0 = r10
1073:                         else
1074:                           if has_terminal?('\G[\x41-\x49]', true, index)
1075:                             r11 = true
1076:                             @index += 1
1077:                           else
1078:                             r11 = nil
1079:                           end
1080:                           if r11
1081:                             r0 = r11
1082:                           else
1083:                             if has_terminal?('\G[\x4B-\x5A]', true, index)
1084:                               r12 = true
1085:                               @index += 1
1086:                             else
1087:                               r12 = nil
1088:                             end
1089:                             if r12
1090:                               r0 = r12
1091:                             else
1092:                               if has_terminal?('\G[\x61-\x69]', true, index)
1093:                                 r13 = true
1094:                                 @index += 1
1095:                               else
1096:                                 r13 = nil
1097:                               end
1098:                               if r13
1099:                                 r0 = r13
1100:                               else
1101:                                 if has_terminal?('\G[\x6B-\x7A]', true, index)
1102:                                   r14 = true
1103:                                   @index += 1
1104:                                 else
1105:                                   r14 = nil
1106:                                 end
1107:                                 if r14
1108:                                   r0 = r14
1109:                                 else
1110:                                   @index = i0
1111:                                   r0 = nil
1112:                                 end
1113:                               end
1114:                             end
1115:                           end
1116:                         end
1117:                       end
1118:                     end
1119:                   end
1120:                 end
1121:               end
1122:             end
1123:           end
1124:         end
1125:       end
1126: 
1127:       node_cache[:obs_zone][start_index] = r0
1128: 
1129:       r0
1130:     end
root() click to toggle source
    # File lib/mail/parsers/rfc2822_obsolete.rb, line 8
 8:     def root
 9:       @root ||= :obs_qp
10:     end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.