summaryrefslogtreecommitdiffstats
path: root/include/ruby
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-24 16:36:14 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-24 16:36:14 +0000
commit368a41151e2969097787eb663ba1bb5c1fb09efd (patch)
tree9092b223c6ff47b94e637088e56e6ab27f7c2229 /include/ruby
parent0912f7a6fc0fb13e9f5e2a215c3024269e4b7d44 (diff)
downloadruby-368a41151e2969097787eb663ba1bb5c1fb09efd.tar.gz
ruby-368a41151e2969097787eb663ba1bb5c1fb09efd.tar.xz
ruby-368a41151e2969097787eb663ba1bb5c1fb09efd.zip
* 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: http://svn.ruby-lang.org/repos/ruby/trunk@14619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include/ruby')
-rw-r--r--include/ruby/encoding.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/ruby/encoding.h b/include/ruby/encoding.h
index c70f0972d..49df3b22a 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)