From e4b53b22228d935847b72e8f9ab0f49a15b54215 Mon Sep 17 00:00:00 2001 From: matz Date: Tue, 1 Feb 2000 03:12:21 +0000 Subject: 2000-02-01 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- hash.c | 29 ++--------------------------- 1 file changed, 2 insertions(+), 27 deletions(-) (limited to 'hash.c') diff --git a/hash.c b/hash.c index b6a1d507c0..77f7e3e6e2 100644 --- a/hash.c +++ b/hash.c @@ -23,39 +23,17 @@ char *strchr _((char*,char)); char* strdup(const char*); #endif -#define HASH_FREEZE FL_USER1 -#define HASH_DELETED FL_USER2 +#define HASH_DELETED FL_USER1 static void rb_hash_modify(hash) VALUE hash; { - if (FL_TEST(hash, HASH_FREEZE)) - rb_raise(rb_eTypeError, "can't modify frozen hash"); + if (OBJ_FROZEN(hash)) rb_error_frozen("hash"); if (!OBJ_TAINTED(hash) && rb_safe_level() >= 4) rb_raise(rb_eSecurityError, "Insecure: can't modify hash"); } -VALUE -rb_hash_freeze(hash) - VALUE hash; -{ - if (rb_safe_level() >= 4 && !OBJ_TAINTED(hash)) - rb_raise(rb_eSecurityError, "Insecure: can't freeze hash"); - - FL_SET(hash, HASH_FREEZE); - return hash; -} - -static VALUE -rb_hash_frozen_p(hash) - VALUE hash; -{ - if (FL_TEST(hash, HASH_FREEZE)) - return Qtrue; - return Qfalse; -} - VALUE rb_cHash; static VALUE envtbl; @@ -1387,9 +1365,6 @@ Init_Hash() rb_define_method(rb_cHash,"dup", rb_hash_dup, 0); rb_define_method(rb_cHash,"rehash", rb_hash_rehash, 0); - rb_define_method(rb_cHash,"freeze", rb_hash_freeze, 0); - rb_define_method(rb_cHash,"frozen?",rb_hash_frozen_p, 0); - rb_define_method(rb_cHash,"to_hash", rb_hash_to_hash, 0); rb_define_method(rb_cHash,"to_a", rb_hash_to_a, 0); rb_define_method(rb_cHash,"to_s", rb_hash_to_s, 0); -- cgit v1.2.3