diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-10-13 16:32:40 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-10-13 16:32:40 +0000 |
commit | 9c24fed339c77552223d5da339a1e58419bd0b71 (patch) | |
tree | 643eb5108a159edcf6791d2de80f4601348129b3 /gc.c | |
parent | 04c290820c99e5b0daefa4c55d1a80abcfd17aab (diff) | |
download | ruby-9c24fed339c77552223d5da339a1e58419bd0b71.tar.gz |
* encoding.c (rb_cEncoding): new Encoding class.
* encoding.c (rb_to_encoding, rb_to_encoding_index): helper functions.
* encoding.c (rb_obj_encoding): return Encoding object now.
* gc.c (garbage_collect): mark Encoding objects.
* string.c (rb_str_force_encoding): accept Encoding object as well as
encoding name.
* include/ruby/encoding.h (rb_to_encoding_index, rb_to_encoding):
prototypes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'gc.c')
-rw-r--r-- | gc.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -1456,6 +1456,8 @@ mark_current_machine_context(rb_thread_t *th) #endif } +void rb_gc_mark_encodings(void); + static int garbage_collect(void) { @@ -1490,6 +1492,7 @@ garbage_collect(void) rb_gc_mark_threads(); rb_gc_mark_symbols(); + rb_gc_mark_encodings(); /* mark protected global variables */ for (list = global_List; list; list = list->next) { |