protected boolean isIdentical(SpecializationNode newNode, Frame frame, Object... args) { return isSame(newNode); }
protected boolean isIdentical(SpecializationNode newNode, Frame frame) { return isSame(newNode); }
protected boolean isIdentical(SpecializationNode newNode, Frame frame, Object o1, Object o2) { return isSame(newNode); }
protected boolean isIdentical(SpecializationNode newNode, Frame frame, Object o1) { return isSame(newNode); }
protected boolean isIdentical(SpecializationNode newNode, Frame frame, Object o1, Object o2, Object o3) { return isSame(newNode); }
protected boolean isIdentical(SpecializationNode newNode, Frame frame, Object o1, Object o2, Object o3, Object o4) { return isSame(newNode); }
protected boolean isIdentical(SpecializationNode newNode, Frame frame, Object o1, Object o2, Object o3, Object o4, Object o5) { return isSame(newNode); }
@Override public final boolean equals(Object obj) { if (obj instanceof SpecializationNode) { return ((SpecializationNode) obj).isSame(this); } return super.equals(obj); }
private int countSameImpl(SpecializationNode node) { if (next != null) { return next.countSameImpl(node) + (isSame(node) ? 1 : 0); } else { return 0; } }
private static SpecializationNode removeSameImpl(SpecializationNode toRemove, CharSequence reason) { SpecializationNode start = toRemove.findStart(); SpecializationNode current = start; while (current != null) { if (current.isSame(toRemove)) { NodeUtil.nonAtomicReplace(current, current.next, reason); if (current == start) { start = start.next; } } current = current.next; } return toRemove.findEnd().findStart(); }
protected final SpecializationNode removeSame(final CharSequence reason) { SpecializationNode start = SpecializationNode.this.findStart(); SpecializationNode current = start; while (current != null) { if (current.isSame(SpecializationNode.this)) { NodeUtil.nonAtomicReplace(current, current.next, reason); if (current == start) { start = start.next; } } current = current.next; } return SpecializationNode.this.findEnd().findStart(); }