From: Kenichi Handa <handa@m17n.org>
To: Stefan Monnier <monnier@IRO.UMontreal.CA>
Cc: pmr@pajato.com, eliz@gnu.org, ueno@unixuser.org,
stephen@xemacs.org, emacs-devel@gnu.org
Subject: Re: Need some help with Rmail/mbox
Date: Wed, 24 Sep 2008 09:56:28 +0900 [thread overview]
Message-ID: <E1KiIg8-0002gr-T1@etlken.m17n.org> (raw)
In-Reply-To: <jwv63oojmv8.fsf-monnier+emacs@gnu.org> (message from Stefan Monnier on Mon, 22 Sep 2008 10:10:48 -0400)
In article <jwv63oojmv8.fsf-monnier+emacs@gnu.org>, Stefan Monnier <monnier@IRO.UMontreal.CA> writes:
> > (1) Do decode-coding-region while specifying a multibyte
> > buffer as TARGET.
> > (2) Insert the contents of unibyte buffer into a multibyte
> > buffer, and then perform decode-coding-region in that
> > multibyte buffer.
> > (3) Get a unibyte string form a unibyte buffer, and then
> > decode it while specifying a multibyte buffer as TARGET.
> > (4) Deocde a unibyte buffer into a mulitbyte string, and
> > then insert it into a multibyte buffer.
> > (Please note that using decode-coding-region directly in a
> > unibyte-buffer is not reliable because if a coding system
> > has post-read-converion function, that funcion (usually)
> > works only in a mutlibyte buffer.)
> > The efficiency is (1) > (2) > (3) > (4).
> I'd have expected 3 to be more efficient than 2 since it doesn't need to
> use the variable width multibyte representation of binary data.
> [ I'd even expect 3 to be about as efficient as 1. ]
> Is this because of the need to copy the string contents to a temp buffer
> in order to run any potential pre-read-conversion function?
We don't have pre-read-conversion but post-read-conversion,
and if the coding system doesn't have post-read-conversion,
a temp buffer is not used. The reason why I think (2)>(3)
is because of a cost of making a unibyte string. And
handling multibyte representation of binary data within
decoder/encoder (written in C) is trivial.
---
Kenichi Handa
handa@ni.aist.go.jp
next prev parent reply other threads:[~2008-09-24 0:56 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-18 16:02 Need some help with Rmail/mbox Paul Michael Reilly
2008-09-19 3:28 ` Stephen J. Turnbull
2008-09-19 5:35 ` Paul Michael Reilly
2008-09-19 9:32 ` Eli Zaretskii
2008-09-20 7:12 ` Stephen J. Turnbull
2008-09-20 10:04 ` Daiki Ueno
2008-09-20 10:19 ` Eli Zaretskii
2008-09-20 10:46 ` Daiki Ueno
2008-09-20 11:30 ` Eli Zaretskii
2008-09-20 23:33 ` Richard M. Stallman
2008-09-21 3:18 ` Eli Zaretskii
2008-09-21 13:34 ` Stefan Monnier
2008-09-21 17:59 ` Eli Zaretskii
2008-09-21 19:26 ` Stefan Monnier
2008-09-21 20:56 ` Eli Zaretskii
2008-09-21 22:07 ` Stefan Monnier
2008-09-22 3:07 ` Eli Zaretskii
2008-09-22 3:36 ` Stefan Monnier
2008-09-22 3:41 ` Daiki Ueno
2008-09-22 3:58 ` Stefan Monnier
2008-09-22 18:48 ` Eli Zaretskii
2008-09-22 4:31 ` Kenichi Handa
2008-09-22 14:10 ` Stefan Monnier
2008-09-24 0:56 ` Kenichi Handa [this message]
2008-09-24 2:53 ` Stefan Monnier
2008-09-24 3:48 ` Kenichi Handa
2008-09-22 15:24 ` Paul Michael Reilly
2008-09-20 13:48 ` Stephen J. Turnbull
2008-09-21 0:57 ` Daiki Ueno
2008-09-22 9:14 ` Stephen J. Turnbull
2008-09-19 4:30 ` Richard M. Stallman
2008-09-19 4:30 ` Richard M. Stallman
2008-09-19 9:12 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=E1KiIg8-0002gr-T1@etlken.m17n.org \
--to=handa@m17n.org \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=monnier@IRO.UMontreal.CA \
--cc=pmr@pajato.com \
--cc=stephen@xemacs.org \
--cc=ueno@unixuser.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).