if(call.getMethod() instanceof XMethod) { XMethod xMethod = (XMethod) call.getMethod(); if(xMethod.isFinal() || (!xMethod.isPublic() && !xMethod.isProtected())) { uselessVoidCandidate = true;
boolean virtualCall = (upperBound == null || !upperBound.isFinal()) && !receiverTypeIsExact && !invokeSpecial;
@Override public void sawOpcode(int seen) { if (seen == Const.INVOKESPECIAL) { XMethod m = getXMethodOperand(); if (m == null) { return; } XClass c = getXClass(); int nameDistance = EditDistance.editDistance(m.getName(), getMethodName()); if (nameDistance < 4 && c.findMatchingMethod(m.getMethodDescriptor()) == null && !m.isFinal()) { potentialSuperCall = m; } } }
if (!(xMethod.isFinal() || xMethod.isStatic() || xMethod.isPrivate())) { try { isExact = false;
&& !getXMethod().isFinal() && (getXClass().isPublic() || getXClass().isProtected())) { for(byte[] stubMethod : STUB_METHODS) { if (Arrays.equals(stubMethod, code)
if (!(inv instanceof INVOKESTATIC) && !(m.isFinal() || xc.isFinal())) { priority = Priorities.NORMAL_PRIORITY;
if (Const.CONSTRUCTOR_NAME.equals(getMethodName()) && seen == Const.INVOKEVIRTUAL) { XMethod m = getXMethodOperand(); if (m != null && !m.isPrivate() && !m.isFinal()) { int args = PreorderVisitor.getNumberArguments(m.getSignature()); OpcodeStack.Item item = stack.getStackItem(args);
priority--; if (xmethod.isStatic() || xmethod.isFinal() || xmethod.isPrivate() || Const.CONSTRUCTOR_NAME.equals(xmethod.getName()) || jclass.isFinal()) { priority--;
inheritedEquals = we.findMethod("equals", "(Ljava/lang/Object;)Z", false); if (inheritedEquals != null) { inheritedEqualsIsFinal = inheritedEquals.isFinal(); inheritedEqualsIsAbstract = inheritedEquals.isAbstract(); whereHashCode = wh.getClassDescriptor().getDottedClassName(); XMethod m = wh.findMethod("hashCode", "()I", false); if (m != null && m.isFinal()) { inheritedHashCodeIsFinal = true;
if(call.getMethod() instanceof XMethod) { XMethod xMethod = (XMethod) call.getMethod(); if(xMethod.isFinal() || (!xMethod.isPublic() && !xMethod.isProtected())) { uselessVoidCandidate = true;
boolean virtualCall = (upperBound == null || !upperBound.isFinal()) && !receiverTypeIsExact && !invokeSpecial;
@Override public void sawOpcode(int seen) { if (seen == INVOKESPECIAL) { XMethod m = getXMethodOperand(); if (m == null) { return; } XClass c = getXClass(); int nameDistance = EditDistance.editDistance(m.getName(), getMethodName()); if (nameDistance < 4 && c.findMatchingMethod(m.getMethodDescriptor()) == null && !m.isFinal()) { potentialSuperCall = m; } } }
if (!(xMethod.isFinal() || xMethod.isStatic() || xMethod.isPrivate())) { try { isExact = false;
&& !getXMethod().isFinal() && (getXClass().isPublic() || getXClass().isProtected())) { for(byte[] stubMethod : STUB_METHODS) { if (Arrays.equals(stubMethod, code)
if (!(inv instanceof INVOKESTATIC) && !(m.isFinal() || xc.isFinal())) { priority = Priorities.NORMAL_PRIORITY;
if ("<init>".equals(getMethodName()) && seen == INVOKEVIRTUAL) { XMethod m = getXMethodOperand(); if (m != null && !m.isPrivate() && !m.isFinal()) { int args = PreorderVisitor.getNumberArguments(m.getSignature()); OpcodeStack.Item item = stack.getStackItem(args);
priority--; if (xmethod.isStatic() || xmethod.isFinal() || xmethod.isPrivate() || "<init>".equals(xmethod.getName()) || jclass.isFinal()) { priority--;
inheritedEquals = we.findMethod("equals", "(Ljava/lang/Object;)Z", false); if (inheritedEquals != null) { inheritedEqualsIsFinal = inheritedEquals.isFinal(); inheritedEqualsIsAbstract = inheritedEquals.isAbstract(); whereHashCode = wh.getClassDescriptor().getDottedClassName(); XMethod m = wh.findMethod("hashCode", "()I", false); if (m != null && m.isFinal()) { inheritedHashCodeIsFinal = true;