Module MrMime_date.Decoder

module Decoder: sig .. end

val p_hour : int MrMime_parser.t
See RFC5322 § 3.3 & 4.3:

      hour              = 2DIGIT / obs-hour
      obs-hour          = [CFWS] 2DIGIT [CFWS]
      

val p_minute : int MrMime_parser.t
See RFC5322 § 3.3 & 4.3:

      minute            = 2DIGIT / obs-minute
      obs-minute        = [CFWS] 2DIGIT [CFWS]
      

val p_second : int MrMime_parser.t
See RFC5322 § 3.3 & 4.3:

      second            = 2DIGIT / obs-second
      obs-second        = [CFWS] 2DIGIT [CFWS]
      

val p_year : int MrMime_parser.t
See RFC5322 § 3.3 & 4.3:

      year              = (FWS 4*DIGIT FWS) / obs-year
      obs-year          = [CFWS] 2*DIGIT [CFWS]
      

val p_day : int MrMime_parser.t
See RFC5322 § 3.3 & 4.3:

      day               = ([FWS] 1*2DIGIT FWS) / obs-day
      obs-day           = [CFWS] 1*2DIGIT [CFWS]
      

val p_month : MrMime_date.month MrMime_parser.t
See RFC5322 § 3.3:

      month             = "Jan" / "Feb" / "Mar" / "Apr" /
                          "May" / "Jun" / "Jul" / "Aug" /
                          "Sep" / "Oct" / "Nov" / "Dec"
      

val p_day_of_week : MrMime_date.day MrMime_parser.t
See RFC5322 § 3.3 & 4.3:

      day-of-week       = ([FWS] day-name) / obs-day-of-week
      obs-day-of-week   = [CFWS] day-name [CFWS]
      day-name          = "Mon" / "Tue" / "Wed" / "Thu" /
                          "Fri" / "Sat" / "Sun"
      

val p_zone : MrMime_date.zone MrMime_parser.t
See RFC5322 § 3.3 & 4.3:

      zone              = (FWS ( "+" / "-" ) 4DIGIT) / obs-zone
      obs-zone          = "UT" / "GMT" /     ; Universal Time
                                             ; North American UT
                                             ; offsets
                          "EST" / "EDT" /    ; Eastern:  - 5/ - 4
                          "CST" / "CDT" /    ; Central:  - 6/ - 5
                          "MST" / "MDT" /    ; Mountain: - 7/ - 6
                          "PST" / "PDT" /    ; Pacific:  - 8/ - 7
                                             ;
                          %d65-73 /          ; Military zones - "A"
                          %d75-90 /          ; through "I" and "K"
                          %d97-105 /         ; through "Z", both
                          %d107-122          ; upper and lower case
      

val p_time : ((int * int * int option) * MrMime_date.zone) MrMime_parser.t
See RFC5322 § 3.3:

     time               = time-of-day zone
     time-of-day        = hour ":" minute [ ":" second ]
     

val p_date : (int * MrMime_date.month * int) MrMime_parser.t
See RFC5322 § 3.3:

      date              = day month year
      

val p_date_time : MrMime_date.date MrMime_parser.t
See RFC5322 § 3.3:

      date-time         = [ day-of-week "," ] date time [CFWS]