ruby-changes:2972
From: ko1@a...
Date: 22 Dec 2007 14:38:46 +0900
Subject: [ruby-changes:2972] akr - Ruby:r14463 (trunk): * regenc.c (onigenc_ascii_is_code_ctype): moved from enc/ascii.c.
akr 2007-12-22 14:38:33 +0900 (Sat, 22 Dec 2007) New Revision: 14463 Added files: trunk/enc/us_ascii.c Modified files: trunk/ChangeLog trunk/enc/ascii.c trunk/encoding.c trunk/regenc.c trunk/regenc.h Log: * regenc.c (onigenc_ascii_is_code_ctype): moved from enc/ascii.c. * regenc.h (onigenc_ascii_is_code_ctype): declared. * enc/ascii.c: use onigenc_ascii_is_code_ctype. * enc/us_ascii.c: new file for US-ASCII. http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=14463&r2=14462 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/regenc.c?r1=14463&r2=14462 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/enc/ascii.c?r1=14463&r2=14462 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/encoding.c?r1=14463&r2=14462 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/regenc.h?r1=14463&r2=14462 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/enc/us_ascii.c?revision=14463&view=markup Index: encoding.c =================================================================== --- encoding.c (revision 14462) +++ encoding.c (revision 14463) @@ -301,7 +301,6 @@ #undef ENC_REGISTER enc_alias("ASCII", rb_enc_name(ONIG_ENCODING_ASCII)); enc_alias("BINARY", rb_enc_name(ONIG_ENCODING_ASCII)); - enc_alias("US-ASCII", rb_enc_name(ONIG_ENCODING_ASCII)); /* will be defined separately in future. */ enc_alias("SJIS", rb_enc_name(ONIG_ENCODING_SJIS)); } Index: regenc.c =================================================================== --- regenc.c (revision 14462) +++ regenc.c (revision 14463) @@ -640,6 +640,16 @@ return FALSE; } +extern int +onigenc_ascii_is_code_ctype(OnigCodePoint code, unsigned int ctype, + OnigEncoding enc) +{ + if (code < 128) + return ONIGENC_IS_ASCII_CODE_CTYPE(code, ctype); + else + return FALSE; +} + extern OnigCodePoint onigenc_mbn_mbc_to_code(OnigEncoding enc, const UChar* p, const UChar* end) { Index: ChangeLog =================================================================== --- ChangeLog (revision 14462) +++ ChangeLog (revision 14463) @@ -1,3 +1,13 @@ +Sat Dec 22 14:27:27 2007 Tanaka Akira <akr@f...> + + * regenc.c (onigenc_ascii_is_code_ctype): moved from enc/ascii.c. + + * regenc.h (onigenc_ascii_is_code_ctype): declared. + + * enc/ascii.c: use onigenc_ascii_is_code_ctype. + + * enc/us_ascii.c: new file for US-ASCII. + Sat Dec 22 14:30:34 2007 Nobuyoshi Nakada <nobu@r...> * parse.y (reg_named_capture_assign_iter): allows non-ascii names and Index: regenc.h =================================================================== --- regenc.h (revision 14462) +++ regenc.h (revision 14463) @@ -124,6 +124,7 @@ 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)); Index: enc/us_ascii.c =================================================================== --- enc/us_ascii.c (revision 0) +++ enc/us_ascii.c (revision 14463) @@ -0,0 +1,28 @@ +#include "regenc.h" + +extern int +mbc_enc_len(const UChar* p, const UChar* e, OnigEncoding enc) +{ + if (*p & 0x80) + return ONIGENC_CONSTRUCT_MBCLEN_INVALID(); + return ONIGENC_CONSTRUCT_MBCLEN_CHARFOUND(1); +} + +OnigEncodingDefine(us_ascii, US_ASCII) = { + mbc_enc_len, + "US-ASCII",/* name */ + 1, /* max byte length */ + 1, /* min byte length */ + onigenc_is_mbc_newline_0x0a, + onigenc_single_byte_mbc_to_code, + onigenc_single_byte_code_to_mbclen, + onigenc_single_byte_code_to_mbc, + onigenc_ascii_mbc_case_fold, + onigenc_ascii_apply_all_case_fold, + onigenc_ascii_get_case_fold_codes_by_str, + onigenc_minimum_property_name_to_ctype, + onigenc_ascii_is_code_ctype, + onigenc_not_support_get_ctype_code_range, + onigenc_single_byte_left_adjust_char_head, + onigenc_always_true_is_allowed_reverse_match +}; Index: enc/ascii.c =================================================================== --- enc/ascii.c (revision 14462) +++ enc/ascii.c (revision 14463) @@ -29,15 +29,6 @@ #include "regenc.h" -static int -ascii_is_code_ctype(OnigCodePoint code, unsigned int ctype, OnigEncoding enc) -{ - if (code < 128) - return ONIGENC_IS_ASCII_CODE_CTYPE(code, ctype); - else - return FALSE; -} - OnigEncodingDefine(ascii, ASCII) = { onigenc_single_byte_mbc_enc_len, "ASCII-8BIT",/* name */ @@ -51,7 +42,7 @@ onigenc_ascii_apply_all_case_fold, onigenc_ascii_get_case_fold_codes_by_str, onigenc_minimum_property_name_to_ctype, - ascii_is_code_ctype, + onigenc_ascii_is_code_ctype, onigenc_not_support_get_ctype_code_range, onigenc_single_byte_left_adjust_char_head, onigenc_always_true_is_allowed_reverse_match -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml