From: "charliesome (Charlie Somerville)" Date: 2013-12-02T13:45:35+09:00 Subject: [ruby-core:58774] [ruby-trunk - Feature #9190] Expose serial helper macros Issue #9190 has been updated by charliesome (Charlie Somerville). > Why do you need those internal values? We have something similar in our custom build of Ruby. It's very useful for performance metrics. ---------------------------------------- Feature #9190: Expose serial helper macros https://bugs.ruby-lang.org/issues/9190#change-43343 Author: simeonwillbanks (Simeon Willbanks) Status: Feedback Priority: Normal Assignee: Category: core Target version: I've defined RubyVM::InstructionHelper with singleton methods #method_serial and #constant_serial. They delegate to helper macros GET_METHOD_SERIAL() and GET_CONSTANT_SERIAL(). With these methods, users have visibility into the method and constant caches. If it makes sense, I hope this patch is included in Ruby 2.1.0. def constants_busted?(&blk) starting = RubyVM::InstructionHelper.constant_serial yield ending = RubyVM::InstructionHelper.constant_serial ending > starting end busted = constants_busted? do class Foo; end end puts busted.inspect # true https://github.com/ruby/ruby/pull/462.patch Thanks for considering; any input is appreciated! -- http://bugs.ruby-lang.org/