Class ArrayByReferenceWrapperGenerator


  • public class ArrayByReferenceWrapperGenerator
    extends Object
    Array elements in .NET can be loaded by reference. Since Jimple does not support this semantic, we generate Wrapper classes. Note that in .NET, array covariance is allowed for reference types: string[] strings = new string[10]; object[] objects = strings; However, for value types, this is not the case. So all the reference types may share one object[] wrapper, but value types need their own.
    Author:
    Marc Miltenberger
    • Constructor Detail

      • ArrayByReferenceWrapperGenerator

        public ArrayByReferenceWrapperGenerator()
    • Method Detail

      • getWrapperClass

        public static SootClass getWrapperClass​(Type elementType)
      • createGet

        public static Value createGet​(Value holder)
      • createSet

        public static Unit createSet​(Value holder,
                                     Value newValue)