From a04a812ed0aa7424ea1f40756402d1f199a43308 Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 24 Dec 2007 16:36:14 +0000 Subject: * include/ruby/encoding.h (rb_enc_left_char_head): new utility macro. * include/ruby/encoding.h (rb_enc_right_char_head): ditto. * io.c (appendline): does multibyte RS search in the function. * io.c (prepare_getline_args): RS may be nil. * io.c (rb_io_getc): should process character based on external encoding, when transcoding required. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- include/ruby/encoding.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'include/ruby') diff --git a/include/ruby/encoding.h b/include/ruby/encoding.h index c70f0972d6..49df3b22a8 100644 --- a/include/ruby/encoding.h +++ b/include/ruby/encoding.h @@ -94,6 +94,9 @@ int rb_enc_codelen(int code, rb_encoding *enc); /* ptr, ptr, encoding -> prev_char */ #define rb_enc_prev_char(s,p,enc) (char *)onigenc_get_prev_char_head(enc,(UChar*)s,(UChar*)p) +/* ptr, ptr, encoding -> next_char */ +#define rb_enc_left_char_head(s,p,enc) (char *)onigenc_get_left_adjust_char_head(enc,(UChar*)s,(UChar*)p) +#define rb_enc_right_char_head(s,p,enc) (char *)onigenc_get_right_adjust_char_head(enc,(UChar*)s,(UChar*)p) #define rb_enc_isctype(c,t,enc) ONIGENC_IS_CODE_CTYPE(enc,c,t) #define rb_enc_isascii(c,enc) ONIGENC_IS_CODE_ASCII(c) -- cgit v1.2.3