* smtp.el (TopLevel): Autoload `sasl-digest-md5-digest-response'.
[elisp/flim.git] / mime-def.el
index 88e788e..ba1736a 100644 (file)
@@ -35,7 +35,7 @@
 (eval-when-compile (require 'cl))      ; list*
 
 (eval-and-compile
-  (defconst mime-library-product ["Chao" (1 13 0) "JR Fujinomori"]
+  (defconst mime-library-product ["SLIM" (1 13 6) "\e$BEg:jOB2N;R\e(B"]
     "Product name, version number and code name of MIME-library package.")
   )
 
 
 (require 'luna)
 
+(autoload 'mime-entity-content-type "mime")
+(autoload 'mime-parse-multipart "mime-parse")
+(autoload 'mime-parse-encapsulated "mime-parse")
+(autoload 'mime-entity-content "mime")
+
 (luna-define-class mime-entity ()
                   (location
                    content-type children parent
   (cdr (assq field-name
             (mime-entity-original-header-internal entity))))
 
+(luna-define-method mime-entity-children ((entity mime-entity))
+  (let* ((content-type (mime-entity-content-type entity))
+        (primary-type (mime-content-type-primary-type content-type)))
+    (cond ((eq primary-type 'multipart)
+          (mime-parse-multipart entity)
+          )
+         ((and (eq primary-type 'message)
+               (memq (mime-content-type-subtype content-type)
+                     '(rfc822 news external-body)
+                     ))
+          (mime-parse-encapsulated entity)
+          ))
+    ))
+
+(luna-define-method mime-insert-text-content ((entity mime-entity))
+  (insert
+   (decode-mime-charset-string (mime-entity-content entity)
+                              (or (mime-content-type-parameter
+                                   (mime-entity-content-type entity)
+                                   "charset")
+                                  default-mime-charset)
+                              'CRLF)
+   ))
+
 
 ;;; @ for mm-backend
 ;;;