From 3ca07d8718a156d2dcc3691bfdd5a0fecfc276d7 Mon Sep 17 00:00:00 2001 From: nobu Date: Mon, 27 Aug 2007 06:56:49 +0000 Subject: [PATCH] * string.c (sym_encoding): return the encoding of a Symbol. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ string.c | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 250efec0a4..ea3c35700d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Mon Aug 27 15:56:48 2007 Nobuyoshi Nakada + + * string.c (sym_encoding): return the encoding of a Symbol. + Mon Aug 27 15:33:10 2007 Nobuyoshi Nakada * util.c (IEEE_BIG_ENDIAN): use configured value. [ruby-dev:31623] diff --git a/string.c b/string.c index 11c80d4618..653f4c067e 100644 --- a/string.c +++ b/string.c @@ -5171,6 +5171,12 @@ sym_swapcase(VALUE sym) return rb_str_intern(rb_str_swapcase(rb_id2str(SYM2ID(sym)))); } +static VALUE +sym_encoding(VALUE sym) +{ + return str_encoding(rb_id2str(SYM2ID(sym))); +} + ID rb_to_id(VALUE name) { @@ -5367,5 +5373,5 @@ Init_String(void) rb_define_method(rb_cSymbol, "capitalize", sym_capitalize, 0); rb_define_method(rb_cSymbol, "swapcase", sym_swapcase, 0); - rb_define_method(rb_cSymbol, "encoding", str_encoding, 0); + rb_define_method(rb_cSymbol, "encoding", sym_encoding, 0); }