From 994e0114d76ae19768d5c303874a968cf6369fd0 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Thu, 7 Sep 2023 22:27:48 +0900 Subject: meta: migrate to monorepo --- .../ruby-detect-running-implementation.xml | 122 +++++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 vhosts/blog/content/posts/2021-10-02/ruby-detect-running-implementation.xml (limited to 'vhosts/blog/content/posts/2021-10-02/ruby-detect-running-implementation.xml') diff --git a/vhosts/blog/content/posts/2021-10-02/ruby-detect-running-implementation.xml b/vhosts/blog/content/posts/2021-10-02/ruby-detect-running-implementation.xml new file mode 100644 index 00000000..7c0c960d --- /dev/null +++ b/vhosts/blog/content/posts/2021-10-02/ruby-detect-running-implementation.xml @@ -0,0 +1,122 @@ + +
+ + 【Ruby】 自身を実行している処理系の種類を判定する + + Ruby には複数の実装があるが、自身を実行している処理系の種類をスクリプト上からどのように判定すればよいだろうか。 + + + ruby + + + + 2021-10-02 + Qiita から移植 + + + + + この記事は Qiita から移植してきたものです。 + 元 URL: https://qiita.com/nsfisis/items/74d7ffeeebc51b20d791 + + + Ruby + という言語には複数の実装があるが、それらをスクリプト上からどのようにして + programmatically に見分ければよいだろうか。 + + + Object クラスに定義されている RUBY_ENGINE + という定数がこの用途に使える。 + + + 参考: + Object::RUBY_ENGINE + + + 上記ページの例から引用する: + + + + + + それぞれの処理系がどのような値を返すかだが、stack overflow + に良い質問と回答があった。 + + + What values for RUBY_ENGINE + correspond to which Ruby implementations? より引用: + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
RUBY_ENGINEImplementation
<undefined>MRI < 1.9
`ruby'MRI >= 1.9 or REE
`jruby'JRuby
`macruby'MacRuby
`rbx'Rubinius
`maglev'MagLev
`ironruby'IronRuby
`cardinal'Cardinal
+
+ + なお、この質問・回答は + 2014年になされたものであり、値は変わっている可能性がある。MRI (aka + CRuby) については執筆時現在 (2020/12/8) も 'ruby' + が返ってくることを確認済み。 + + + この表にない主要な処理系として、https://mruby.org[mruby] は 'mruby' + を返す。 + + + mruby + 該当部分のソース より引用: + + + + +
-- cgit v1.2.3-70-g09d2