Skip to content

Commit e5d3039

Browse files
committed
Prefer rb_const_get over rb_path2class for direct constants
1 parent 6e6e673 commit e5d3039

File tree

5 files changed

+10
-11
lines changed

5 files changed

+10
-11
lines changed

ext/digest/bubblebabble/bubblebabble.c

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -129,15 +129,14 @@ Init_bubblebabble(void)
129129

130130
rb_require("digest");
131131

132-
rb_mDigest = rb_path2class("Digest");
133-
rb_mDigest_Instance = rb_path2class("Digest::Instance");
134-
rb_cDigest_Class = rb_path2class("Digest::Class");
135-
136132
#if 0
137133
rb_mDigest = rb_define_module("Digest");
138134
rb_mDigest_Instance = rb_define_module_under(rb_mDigest, "Instance");
139135
rb_cDigest_Class = rb_define_class_under(rb_mDigest, "Class", rb_cObject);
140136
#endif
137+
rb_mDigest = rb_digest_namespace();
138+
rb_mDigest_Instance = rb_const_get(rb_mDigest, rb_intern_const("Instance"));
139+
rb_cDigest_Class = rb_const_get(rb_mDigest, rb_intern_const("Class"));
141140

142141
rb_define_module_function(rb_mDigest, "bubblebabble", rb_digest_s_bubblebabble, 1);
143142
rb_define_singleton_method(rb_cDigest_Class, "bubblebabble", rb_digest_class_s_bubblebabble, -1);

ext/digest/md5/md5init.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,8 @@ Init_md5(void)
5353
mDigest = rb_define_module("Digest"); /* let rdoc know */
5454
#endif
5555
mDigest = rb_digest_namespace();
56-
cDigest_Base = rb_path2class("Digest::Base");
56+
cDigest_Base = rb_const_get(mDigest, rb_intern_const("Base"));
5757

5858
cDigest_MD5 = rb_define_class_under(mDigest, "MD5", cDigest_Base);
59-
6059
rb_iv_set(cDigest_MD5, "metadata", rb_digest_make_metadata(&md5));
6160
}

ext/digest/rmd160/rmd160init.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,8 @@ Init_rmd160(void)
4949
mDigest = rb_define_module("Digest"); /* let rdoc know */
5050
#endif
5151
mDigest = rb_digest_namespace();
52-
cDigest_Base = rb_path2class("Digest::Base");
52+
cDigest_Base = rb_const_get(mDigest, rb_intern_const("Base"));
5353

5454
cDigest_RMD160 = rb_define_class_under(mDigest, "RMD160", cDigest_Base);
55-
5655
rb_iv_set(cDigest_RMD160, "metadata", rb_digest_make_metadata(&rmd160));
5756
}

ext/digest/sha1/sha1init.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,8 @@ Init_sha1(void)
5555
mDigest = rb_define_module("Digest"); /* let rdoc know */
5656
#endif
5757
mDigest = rb_digest_namespace();
58-
cDigest_Base = rb_path2class("Digest::Base");
58+
cDigest_Base = rb_const_get(mDigest, rb_intern_const("Base"));
5959

6060
cDigest_SHA1 = rb_define_class_under(mDigest, "SHA1", cDigest_Base);
61-
6261
rb_iv_set(cDigest_SHA1, "metadata", rb_digest_make_metadata(&sha1));
6362
}

ext/digest/sha2/sha2init.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,11 @@ Init_sha2(void)
4040

4141
FOREACH_BITLEN(DECLARE_ALGO_CLASS)
4242

43+
#if 0
44+
mDigest = rb_define_module("Digest"); /* let rdoc know */
45+
#endif
4346
mDigest = rb_digest_namespace();
44-
cDigest_Base = rb_path2class("Digest::Base");
47+
cDigest_Base = rb_const_get(mDigest, rb_intern_const("Base"));
4548

4649
#define DEFINE_ALGO_CLASS(bitlen) \
4750
cDigest_SHA##bitlen = rb_define_class_under(mDigest, "SHA" #bitlen, cDigest_Base); \

0 commit comments

Comments
 (0)