org_aspectj_ajde_internal_AspectJBuildManagerTest_java
org.aspectj.weaver.ResolvedMemberImpl
public static ResolvedMemberImpl readResolvedMember(VersionedDataInputStream s, ISourceContext sourceContext) throws IOException {
        MemberKind mk = MemberKind.read(s);
        boolean compressed = s.isAtLeast169() ? s.readBoolean() : false;
        UnresolvedType declaringType = compressed ? UnresolvedType.forSignature(s.readUtf8(s.readShort())) : UnresolvedType.read(s);
        int modifiers = s.readInt();
        String name = compressed ? s.readUtf8(s.readShort()) : s.readUTF();
        String signature = compressed ? s.readUtf8(s.readShort()) : s.readUTF();
        ResolvedMemberImpl m = new ResolvedMemberImpl(mk, declaringType, modifiers, name, signature);
        m.checkedExceptions = UnresolvedType.readArray(s);
        m.start = s.readInt();
        m.end = s.readInt();
        m.sourceContext = sourceContext;
        if (s.getMajorVersion() >= 2) {
            int tvcount;
            boolean isvarargs;
            if (s.getMajorVersion() >= 3 && (isvarargs = s.readBoolean())) {
                m.setVarargsMethod();
            }
            int n = tvcount = s.isAtLeast169() ? s.readByte() : s.readInt();
            if (tvcount != 0) {
                m.typeVariables = new TypeVariable[tvcount];
                for (int i = 0; i < tvcount; ++i) {
                    m.typeVariables[i] = TypeVariable.read(s);
                    m.typeVariables[i].setDeclaringElement(m);
                    m.typeVariables[i].setRank(i);
                }
            }
            if (s.getMajorVersion() >= 3) {
                int pcount = -1;
                boolean hasAGenericSignature = false;
                hasAGenericSignature = s.isAtLeast169() ? (pcount = (int)s.readByte()) >= 0 && pcount < 255 : s.readBoolean();
                if (hasAGenericSignature) {
                    int ps = s.isAtLeast169() ? pcount : s.readInt();
                    UnresolvedType[] params = new UnresolvedType[ps];
                    for (int i = 0; i < params.length; ++i) {
                        params[i] = compressed ? TypeFactory.createTypeFromSignature(s.readSignature()) : TypeFactory.createTypeFromSignature(s.readUTF());
                    }
                    UnresolvedType rt = compressed ? TypeFactory.createTypeFromSignature(s.readSignature()) : TypeFactory.createTypeFromSignature(s.readUTF());
                    m.parameterTypes = params;
                    m.returnType = rt;
                }
            }
        }
        return m;
    }
 -> java.io.DataInputStream.readByte(): byte -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.contains(java.lang.CharSequence): boolean -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int -> java.lang.String.charAt(int): char -> java.lang.String.substring(int): java.lang.String -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.contains(java.lang.CharSequence): boolean -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int -> java.io.DataInputStream.readShort(): short -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int
 [CALL] [CALL] -> java.io.DataInputStream.readByte(): byte [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [CALL] -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.contains(java.lang.CharSequence): boolean -> java.lang.String.charAt(int): char [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.substring(int): java.lang.String [CALL] -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.contains(java.lang.CharSequence): boolean -> java.lang.String.charAt(int): char [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] -> java.io.DataInputStream.readShort(): short [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int [CALL] [EXIT] [EXIT] [EXIT]