Class RubyObjectSpecializer

java.lang.Object
org.jruby.specialized.RubyObjectSpecializer

public class RubyObjectSpecializer extends Object
A code generator for Ruby objects, to map known instance variables into fields.
  • Field Details

  • Constructor Details

    • RubyObjectSpecializer

      public RubyObjectSpecializer()
  • Method Details

    • getClassForSize

      private static RubyObjectSpecializer.ClassAndAllocator getClassForSize(int size)
    • specializeForVariables

      public static ObjectAllocator specializeForVariables(RubyClass klass, Set<String> foundVariables)
    • generateInternal

      private static Class generateInternal(int size, String clsPath)
    • genGetSwitch

      private static void genGetSwitch(String clsPath, int size, me.qmx.jitescript.CodeBlock block, int offsetVar)
    • genPutSwitch

      private static void genPutSwitch(String clsPath, int size, me.qmx.jitescript.CodeBlock block, int offsetVar)
    • defineClass

      private static Class defineClass(me.qmx.jitescript.JiteClass jiteClass)
    • classNameFromJiteClass

      private static String classNameFromJiteClass(me.qmx.jitescript.JiteClass jiteClass)