ruby-changes:3371
From: ko1@a...
Date: 3 Jan 2008 15:13:49 +0900
Subject: [ruby-changes:3371] akr - Ruby:r14864 (trunk): * include/ruby/encoding.h (rb_isascii): simplified.
akr 2008-01-03 15:13:31 +0900 (Thu, 03 Jan 2008)
New Revision: 14864
Modified files:
trunk/ChangeLog
trunk/include/ruby/encoding.h
trunk/include/ruby/oniguruma.h
trunk/include/ruby/ruby.h
trunk/regenc.h
Log:
* include/ruby/encoding.h (rb_isascii): simplified.
(rb_isalnum): call onigenc_ascii_is_code_ctype without indirect call.
(rb_isalpha): ditto.
(rb_isblank): ditto.
(rb_iscntrl): ditto.
(rb_isdigit): ditto.
(rb_isgraph): ditto.
(rb_islower): ditto.
(rb_isprint): ditto.
(rb_ispunct): ditto.
(rb_isspace): ditto.
(rb_isupper): ditto.
(rb_isxdigit): ditto.
* include/ruby/oniguruma.h (onigenc_ascii_is_code_ctype): declaration
moved from regenc.h.
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/include/ruby/ruby.h?r1=14864&r2=14863&diff_format=u
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/include/ruby/oniguruma.h?r1=14864&r2=14863&diff_format=u
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=14864&r2=14863&diff_format=u
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/include/ruby/encoding.h?r1=14864&r2=14863&diff_format=u
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/regenc.h?r1=14864&r2=14863&diff_format=u
Index: include/ruby/ruby.h
===================================================================
--- include/ruby/ruby.h (revision 14863)
+++ include/ruby/ruby.h (revision 14864)
@@ -968,6 +968,7 @@
} /* extern "C" { */
#endif
+/* locale insensitive functions */
#include "encoding.h"
#ifndef ISPRINT
#define ISASCII(c) rb_isascii((int)(unsigned char)(c))
Index: include/ruby/encoding.h
===================================================================
--- include/ruby/encoding.h (revision 14863)
+++ include/ruby/encoding.h (revision 14864)
@@ -136,19 +136,19 @@
void rb_enc_set_default_external(VALUE encoding);
VALUE rb_locale_charmap(VALUE klass);
-#define rb_isascii(c) ONIGENC_IS_CODE_ASCII(c)
-#define rb_isalnum(c) ONIGENC_IS_CODE_ALNUM(ONIG_ENCODING_ASCII, c)
-#define rb_isalpha(c) ONIGENC_IS_CODE_ALPHA(ONIG_ENCODING_ASCII, c)
-#define rb_isblank(c) ONIGENC_IS_CODE_BLANK(ONIG_ENCODING_ASCII, c)
-#define rb_iscntrl(c) ONIGENC_IS_CODE_CNTRL(ONIG_ENCODING_ASCII, c)
-#define rb_isdigit(c) ONIGENC_IS_CODE_DIGIT(ONIG_ENCODING_ASCII, c)
-#define rb_isgraph(c) ONIGENC_IS_CODE_GRAPH(ONIG_ENCODING_ASCII, c)
-#define rb_islower(c) ONIGENC_IS_CODE_LOWER(ONIG_ENCODING_ASCII, c)
-#define rb_isprint(c) ONIGENC_IS_CODE_PRINT(ONIG_ENCODING_ASCII, c)
-#define rb_ispunct(c) ONIGENC_IS_CODE_PUNCT(ONIG_ENCODING_ASCII, c)
-#define rb_isspace(c) ONIGENC_IS_CODE_SPACE(ONIG_ENCODING_ASCII, c)
-#define rb_isupper(c) ONIGENC_IS_CODE_UPPER(ONIG_ENCODING_ASCII, c)
-#define rb_isxdigit(c) ONIGENC_IS_CODE_XDIGIT(ONIG_ENCODING_ASCII, c)
+#define rb_isascii(c) ((unsigned long)(c) < 128)
+#define rb_isalnum(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_ALNUM, ONIG_ENCODING_ASCII)
+#define rb_isalpha(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_ALPHA, ONIG_ENCODING_ASCII)
+#define rb_isblank(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_BLANK, ONIG_ENCODING_ASCII)
+#define rb_iscntrl(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_CNTRL, ONIG_ENCODING_ASCII)
+#define rb_isdigit(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_DIGIT, ONIG_ENCODING_ASCII)
+#define rb_isgraph(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_GRAPH, ONIG_ENCODING_ASCII)
+#define rb_islower(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_LOWER, ONIG_ENCODING_ASCII)
+#define rb_isprint(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_PRINT, ONIG_ENCODING_ASCII)
+#define rb_ispunct(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_PUNCT, ONIG_ENCODING_ASCII)
+#define rb_isspace(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_SPACE, ONIG_ENCODING_ASCII)
+#define rb_isupper(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_UPPER, ONIG_ENCODING_ASCII)
+#define rb_isxdigit(c) onigenc_ascii_is_code_ctype((c), ONIGENC_CTYPE_XDIGIT, ONIG_ENCODING_ASCII)
#define rb_tolower(c) rb_enc_tolower(c, ONIG_ENCODING_ASCII)
#define rb_toupper(c) rb_enc_toupper(c, ONIG_ENCODING_ASCII)
Index: include/ruby/oniguruma.h
===================================================================
--- include/ruby/oniguruma.h (revision 14863)
+++ include/ruby/oniguruma.h (revision 14864)
@@ -380,6 +380,8 @@
ONIG_EXTERN
int onigenc_str_bytelen_null P_((OnigEncoding enc, const OnigUChar* p));
+ONIG_EXTERN
+int onigenc_ascii_is_code_ctype P_((OnigCodePoint code, unsigned int ctype, OnigEncoding enc));
/* PART: regular expression */
Index: ChangeLog
===================================================================
--- ChangeLog (revision 14863)
+++ ChangeLog (revision 14864)
@@ -1,3 +1,22 @@
+Thu Jan 3 15:10:26 2008 Tanaka Akira <akr@f...>
+
+ * include/ruby/encoding.h (rb_isascii): simplified.
+ (rb_isalnum): call onigenc_ascii_is_code_ctype without indirect call.
+ (rb_isalpha): ditto.
+ (rb_isblank): ditto.
+ (rb_iscntrl): ditto.
+ (rb_isdigit): ditto.
+ (rb_isgraph): ditto.
+ (rb_islower): ditto.
+ (rb_isprint): ditto.
+ (rb_ispunct): ditto.
+ (rb_isspace): ditto.
+ (rb_isupper): ditto.
+ (rb_isxdigit): ditto.
+
+ * include/ruby/oniguruma.h (onigenc_ascii_is_code_ctype): declaration
+ moved from regenc.h.
+
Thu Jan 3 14:37:17 2008 Tanaka Akira <akr@f...>
* parse.y (parser_magic_comment): use STRNCASECMP.
Index: regenc.h
===================================================================
--- regenc.h (revision 14863)
+++ regenc.h (revision 14864)
@@ -124,7 +124,6 @@
ONIG_EXTERN UChar* onigenc_single_byte_left_adjust_char_head P_((const UChar* start, const UChar* s, OnigEncoding enc));
ONIG_EXTERN int onigenc_always_true_is_allowed_reverse_match P_((const UChar* s, const UChar* end, OnigEncoding enc));
ONIG_EXTERN int onigenc_always_false_is_allowed_reverse_match P_((const UChar* s, const UChar* end, OnigEncoding enc));
-ONIG_EXTERN int onigenc_ascii_is_code_ctype P_((OnigCodePoint code, unsigned int ctype, OnigEncoding enc));
/* methods for multi byte encoding */
ONIG_EXTERN OnigCodePoint onigenc_mbn_mbc_to_code P_((OnigEncoding enc, const UChar* p, const UChar* end));
--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml