Variable: parse-time-rules

parse-time-rules is a variable defined in parse-time.el.gz.

Value

Large value
(((6)
  parse-time-weekdays)
 ((3)
  (1 31))
 ((4)
  parse-time-months)
 ((5)
  (100))
 ((2 1 0)
  #[0 ";\205�G\301U\205�\302H\303U\205�\304H\303U\207"
      [parse-time-elt 8 2 58 5]
      2]
  [0 2]
  [3 5]
  [6 8])
 ((8 7)
  parse-time-zoneinfo
  #[0 "@\207"
      [parse-time-val]
      1]
  #[0 "A@\207"
      [parse-time-val]
      1])
 ((8)
  #[0 ";\205�G\301U\205�\302H\303U\206�\302H\304U\207"
      [parse-time-elt 5 0 43 45]
      2]
  #[0 "\301\302\303\304\305\306%\301\302\303\307\305\304%_\\_\310H\311U\203�\312\202 �\307_\207"
      [parse-time-elt 60 cl-parse-integer :start 3 :end 5 1 0 45 -1]
      9])
 ((5 4 3)
  #[0 ";\205�G\301U\205�\302H\303U\205�\304H\303U\207"
      [parse-time-elt 10 4 45 7]
      2]
  [0 4]
  [5 7]
  [8 10])
 ((2 1 0)
  #[0 ";\205�G\301U\205�\302H\303U\207"
      [parse-time-elt 5 2 58]
      2]
  [0 2]
  [3 5]
  #[0 "\300\207"
      [0]
      1])
 ((2 1 0)
  #[0 ";\205�G\301U\205�\302H\303U\207"
      [parse-time-elt 4 1 58]
      2]
  [0 1]
  [2 4]
  #[0 "\300\207"
      [0]
      1])
 ((2 1 0)
  #[0 ";\205�G\301U\205�\302H\303U\207"
      [parse-time-elt 7 1 58]
      2]
  [0 1]
  [2 4]
  [5 7])
 ((5)
  (50 110)
  #[0 "\301\\\207"
      [parse-time-elt 1900]
      2])
 ((5)
  (0 49)
  #[0 "\301\\\207"
      [parse-time-elt 2000]
      2]))

Documentation

(slots predicate extractor...)

Source Code

;; Defined in /usr/src/emacs/lisp/calendar/parse-time.el.gz
(defvar parse-time-rules
  `(((6) parse-time-weekdays)
    ((3) (1 31))
    ((4) parse-time-months)
    ((5) (100))
    ((2 1 0)
     ,(lambda () (and (stringp parse-time-elt)
                      (= (length parse-time-elt) 8)
                      (= (aref parse-time-elt 2) ?:)
                      (= (aref parse-time-elt 5) ?:)))
     [0 2] [3 5] [6 8])
    ((8 7) parse-time-zoneinfo
     ,(lambda () (car parse-time-val))
     ,(lambda () (cadr parse-time-val)))
    ((8)
     ,(lambda ()
        (and (stringp parse-time-elt)
             (= 5 (length parse-time-elt))
             (or (= (aref parse-time-elt 0) ?+)
                 (= (aref parse-time-elt 0) ?-))))
     ,(lambda () (* 60 (+ (cl-parse-integer parse-time-elt :start 3 :end 5)
                          (* 60 (cl-parse-integer parse-time-elt :start 1 :end 3)))
                    (if (= (aref parse-time-elt 0) ?-) -1 1))))
    ((5 4 3)
     ,(lambda () (and (stringp parse-time-elt)
                      (= (length parse-time-elt) 10)
                      (= (aref parse-time-elt 4) ?-)
                      (= (aref parse-time-elt 7) ?-)))
     [0 4] [5 7] [8 10])
    ((2 1 0)
     ,(lambda () (and (stringp parse-time-elt)
                      (= (length parse-time-elt) 5)
                      (= (aref parse-time-elt 2) ?:)))
     [0 2] [3 5] ,(lambda () 0))
    ((2 1 0)
     ,(lambda () (and (stringp parse-time-elt)
                      (= (length parse-time-elt) 4)
                      (= (aref parse-time-elt 1) ?:)))
     [0 1] [2 4] ,(lambda () 0))
    ((2 1 0)
     ,(lambda () (and (stringp parse-time-elt)
                      (= (length parse-time-elt) 7)
                      (= (aref parse-time-elt 1) ?:)))
     [0 1] [2 4] [5 7])
    ((5) (50 110) ,(lambda () (+ 1900 parse-time-elt)))
    ((5) (0 49) ,(lambda () (+ 2000 parse-time-elt))))
  "(slots predicate extractor...)")