[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-commit] emacs/src regex.c
From: |
Kenichi Handa |
Subject: |
[Emacs-commit] emacs/src regex.c |
Date: |
Tue, 03 Sep 2002 00:09:40 -0400 |
CVSROOT: /cvs
Module name: emacs
Branch: emacs-unicode
Changes by: Kenichi Handa <address@hidden> 02/09/03 00:09:40
Modified files:
src : regex.c
Log message:
* regex.c (RE_TARGET_MULTIBYTE_P): New macro.
(GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
that is zero, convert an eight-bit char to multibyte.
(MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
non-emacs case.
(PATFETCH): Convert an eight-bit char to multibyte.
(HANDLE_UNIBYTE_RANGE): New macro.
(regex_compile): Setup the compiled pattern for multibyte chars
even if the given regex string is unibyte. Use PATFETCH_RAW
instead of PATFETCH in many places. To handle `charset'
specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
only for ASCII chars.
(analyse_first) <exactn>: Simplified because the compiled pattern
is multibyte.
<charset_not>: Setup fastmap from bitmap only for ASCII chars.
<charset>: Use CHAR_LEADING_CODE to get leading codes.
<categoryspec>: If multibyte, setup fastmap only for ASCII chars
here.
(re_compile_fastmap) [emacs]: Call analyse_first with the arg
multibyte always 1.
(re_search_2) In emacs, set the locale variable multibyte to 1,
otherwise to 0. New local variable target_multibyte. Check it
to decide the multibyteness of STR1 and STR2. If
target_multibyte is zero, convert unibyte chars to multibyte
before translating and checking fastmap.
(TARGET_CHAR_AND_LENGTH): New macro.
(re_match_2_internal): In emacs, set the locale variable multibyte
to 1, otherwise to 0. New local variable target_multibyte. Check
it to decide the multibyteness of STR1 and STR2. Use
TARGET_CHAR_AND_LENGTH to fetch a character from D.
<charset, charset_not>: If multibyte is nonzero, check fastmap
only for ASCII chars. Call bcmp_translate with
target_multibyte, not with multibyte.
<begline>: Declare the local variable C as `unsigned'.
(bcmp_translate): Change the last arg name to target_multibyte.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/emacs/emacs/src/regex.c.diff?only_with_tag=emacs-unicode&tr1=1.174.2.1&tr2=1.174.2.2&r1=text&r2=text
- [Emacs-commit] emacs/src regex.c,
Kenichi Handa <=
- [Emacs-commit] emacs/src regex.c, Richard M. Stallman, 2002/09/04
- [Emacs-commit] emacs/src regex.c, Dave Love, 2002/09/05
- [Emacs-commit] emacs/src regex.c, Richard M. Stallman, 2002/09/05
- [Emacs-commit] emacs/src regex.c, Richard M. Stallman, 2002/09/09
- [Emacs-commit] emacs/src regex.c, Stefan Monnier, 2002/09/10
- [Emacs-commit] emacs/src regex.c, Kenichi Handa, 2002/09/18