;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
;; Keywords: mail, news, RFC 822, STD 11
-;; Version: $Id: std11-parse.el,v 0.3 1996-08-28 17:15:33 morioka Exp $
+;; Version: $Id: std11-parse.el,v 0.6 1996-08-28 17:35:10 morioka Exp $
;; This file is part of tl (Tiny Library).
(substring str end)
))))
+(defun std11-analyze-enclosure (str type open close)
+ (let ((len (length str)))
+ (if (and (> len 0)
+ (eq (aref str 0) open))
+ (let ((i 1) chr dest)
+ (catch 'tag
+ (while (< i len)
+ (setq chr (aref str i))
+ (cond ((eq chr ?\\)
+ (setq i (1+ i))
+ (if (>= i len)
+ (throw 'tag nil)
+ )
+ (setq dest (concat dest (char-to-string (aref str i))))
+ )
+ ((eq chr close)
+ (throw 'tag
+ (cons (cons type dest) (substring str (1+ i)))
+ )
+ )
+ (t
+ (setq dest (concat dest (char-to-string (aref str i))))
+ ))
+ (setq i (1+ i))
+ ))))))
+
+(defun std11-analyze-quoted-string (str)
+ (std11-analyze-enclosure str 'quoted-string ?\" ?\")
+ )
+
+(defun std11-analyze-domain-literal (str)
+ (std11-analyze-enclosure str 'domain-literal ?\[ ?\])
+ )
+
;;; @ end
;;;