public class WeakObjectType extends RefType
java.lang.Object a; int[] b; b = ((Object[]) a)[42]; b[0] = 42;If we reconstruct types for this code, the array element from "a" is of type "java.lang.Object", because the array was of type "java.lang.Object[]". Still, this typing is not required, we rather take it, because we have no better guess as to what the original type was. Later on, when we learn that we write an "int" into "b", we can conclude, that "b" should have been of type "int[]". In other words, we need to drop the requirement of "b" being of type "java.lang.Object", which was our initial assumption.
| Constructor and Description |
|---|
WeakObjectType(Singletons.Global g) |
WeakObjectType(String className) |
apply, compareTo, equals, getAnySubType, getArrayElementType, getClassName, getSootClass, hashCode, hasSootClass, isAllowedInFinalCode, merge, setAnySubType, setClassName, setSootClass, toQuotedString, toString, v, v, vgetArrayType, getDefaultFinalType, getEscapedName, getNumber, makeArrayType, setArrayType, setNumber, toMachineTypepublic WeakObjectType(Singletons.Global g)
public WeakObjectType(String className)
Copyright © 2024 Soot OSS. All rights reserved.