From ac6a8028669701ce4836595fe73c8a757cc4ca70 Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Fri, 10 May 2002 03:55:12 +0000 Subject: [PATCH] (struct charset): New member `code_space_mask'. --- src/charset.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/charset.h b/src/charset.h index 6d8068abd59..4a21d8e2d81 100644 --- a/src/charset.h +++ b/src/charset.h @@ -132,9 +132,20 @@ struct charset /* Dimension of the charset: 1, 2, 3, or 4. */ int dimension; - /* Minimum byte code in each dimension. */ + /* Byte code range of each dimension. [4N] is a mininum + byte code of the (N+1)th dimension, [4N+1] is a + maximum byte code of the (N+1)th dimension, [4N+2] is + ([4N+1] - [4N] + 1), [4N+3] + is a number of characters containd in the first to (N+1)th + dismesions. We get `char-index' of a `code-point' from this + information. */ int code_space[16]; + /* If B is a byte of Nth dimension of a code-point, the (N-1)th bit + of code_space_mask[B] is set. This array is used to quickly + check if a code-point is in a valid range. */ + unsigned char *code_space_mask; + /* 1 if there's no gap in code-points. */ int code_linear_p; -- 2.39.5