From b4417ff66511ef94a80a3b49ba184603b8e85a1b Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Wed, 23 Apr 2025 11:22:55 +0900 Subject: [PATCH] Add Encoding::UNICODE_VERSION constant --- enc/unicode.c | 2 -- encoding.c | 11 +++++++++++ inits.c | 1 + 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/enc/unicode.c b/enc/unicode.c index 18fba02476..cbfc6cdf58 100644 --- a/enc/unicode.c +++ b/enc/unicode.c @@ -801,7 +801,6 @@ SpecialsCopy: return (int )(to - to_start); } -#if 0 const char onigenc_unicode_version_string[] = #ifdef ONIG_UNICODE_VERSION_STRING ONIG_UNICODE_VERSION_STRING @@ -817,4 +816,3 @@ const int onigenc_unicode_version_number[3] = { 0 #endif }; -#endif diff --git a/encoding.c b/encoding.c index e6b49ef145..e2aaadb5b9 100644 --- a/encoding.c +++ b/encoding.c @@ -1953,6 +1953,17 @@ Init_Encoding(void) rb_marshal_define_compat(rb_cEncoding, Qnil, 0, enc_m_loader); } +void +Init_unicode_version(void) +{ + extern const char onigenc_unicode_version_string[]; + + VALUE str = rb_usascii_str_new_static(onigenc_unicode_version_string, + strlen(onigenc_unicode_version_string)); + OBJ_FREEZE(str); + rb_define_const(rb_cEncoding, "UNICODE_VERSION", str); +} + void Init_encodings(void) { diff --git a/inits.c b/inits.c index 94cec780ad..79683185df 100644 --- a/inits.c +++ b/inits.c @@ -75,6 +75,7 @@ rb_call_inits(void) CALL(ast); CALL(shape); CALL(Prism); + CALL(unicode_version); // enable builtin loading CALL(builtin);