@Override public final boolean equals(final Object o) { if (this == o) { return true; } if (!(o instanceof Frame)) { return false; } final Frame frame = (Frame) o; return frame._frameType == _frameType && CollectionUtilities.sequenceDeepEquals(frame._localValues, _localValues) && CollectionUtilities.sequenceDeepEquals(frame._stackValues, _stackValues); }
public static <T> boolean sequenceDeepEquals(final Iterable<? extends T> first, final Iterable<? extends T> second) { VerifyArgument.notNull(first, "first"); VerifyArgument.notNull(second, "second"); if (first == second) { return true; } if (first instanceof List<?> && second instanceof List<?>) { return sequenceDeepEquals((List<?>) first, (List<?>) second); } final Iterator<? extends T> firstIterator = first.iterator(); final Iterator<? extends T> secondIterator = second.iterator(); while (firstIterator.hasNext()) { if (!secondIterator.hasNext()) { return false; } if (!sequenceDeepEqualsCore(firstIterator.next(), secondIterator.next())) { return false; } } return !secondIterator.hasNext(); }
@Override public final boolean equals(final Object o) { if (this == o) { return true; } if (!(o instanceof Frame)) { return false; } final Frame frame = (Frame) o; return frame._frameType == _frameType && CollectionUtilities.sequenceDeepEquals(frame._localValues, _localValues) && CollectionUtilities.sequenceDeepEquals(frame._stackValues, _stackValues); }
public static <T> boolean sequenceDeepEquals(final Iterable<? extends T> first, final Iterable<? extends T> second) { VerifyArgument.notNull(first, "first"); VerifyArgument.notNull(second, "second"); if (first == second) { return true; } if (first instanceof List<?> && second instanceof List<?>) { return sequenceDeepEquals((List<?>) first, (List<?>) second); } final Iterator<? extends T> firstIterator = first.iterator(); final Iterator<? extends T> secondIterator = second.iterator(); while (firstIterator.hasNext()) { if (!secondIterator.hasNext()) { return false; } if (!sequenceDeepEqualsCore(firstIterator.next(), secondIterator.next())) { return false; } } return !secondIterator.hasNext(); }
@Override public final boolean equals(final Object o) { if (this == o) { return true; } if (!(o instanceof Frame)) { return false; } final Frame frame = (Frame) o; return frame._frameType == _frameType && CollectionUtilities.sequenceDeepEquals(frame._localValues, _localValues) && CollectionUtilities.sequenceDeepEquals(frame._stackValues, _stackValues); }
public static <T> boolean sequenceDeepEquals(final Iterable<? extends T> first, final Iterable<? extends T> second) { VerifyArgument.notNull(first, "first"); VerifyArgument.notNull(second, "second"); if (first == second) { return true; } if (first instanceof List<?> && second instanceof List<?>) { return sequenceDeepEquals((List<?>) first, (List<?>) second); } final Iterator<? extends T> firstIterator = first.iterator(); final Iterator<? extends T> secondIterator = second.iterator(); while (firstIterator.hasNext()) { if (!secondIterator.hasNext()) { return false; } if (!sequenceDeepEqualsCore(firstIterator.next(), secondIterator.next())) { return false; } } return !secondIterator.hasNext(); }
private static boolean sequenceDeepEqualsCore(final Object first, final Object second) { if (first instanceof List<?>) { return second instanceof List<?> && sequenceDeepEquals((List<?>) first, (List<?>) second); } return Comparer.deepEquals(first, second); }
private static boolean sequenceDeepEqualsCore(final Object first, final Object second) { if (first instanceof List<?>) { return second instanceof List<?> && sequenceDeepEquals((List<?>) first, (List<?>) second); } return Comparer.deepEquals(first, second); }
private static boolean sequenceDeepEqualsCore(final Object first, final Object second) { if (first instanceof List<?>) { return second instanceof List<?> && sequenceDeepEquals((List<?>) first, (List<?>) second); } return Comparer.deepEquals(first, second); }
public static <T> boolean sequenceEquals(final Iterable<? extends T> first, final Iterable<? extends T> second) { VerifyArgument.notNull(first, "first"); VerifyArgument.notNull(second, "second"); if (first == second) { return true; } if (first instanceof List<?> && second instanceof List<?>) { return sequenceDeepEquals((List<?>) first, (List<?>) second); } final Iterator<? extends T> firstIterator = first.iterator(); final Iterator<? extends T> secondIterator = second.iterator(); while (firstIterator.hasNext()) { if (!secondIterator.hasNext()) { return false; } if (!Comparer.equals(firstIterator.next(), secondIterator.next())) { return false; } } return !secondIterator.hasNext(); }
public static <T> boolean sequenceEquals(final Iterable<? extends T> first, final Iterable<? extends T> second) { VerifyArgument.notNull(first, "first"); VerifyArgument.notNull(second, "second"); if (first == second) { return true; } if (first instanceof List<?> && second instanceof List<?>) { return sequenceDeepEquals((List<?>) first, (List<?>) second); } final Iterator<? extends T> firstIterator = first.iterator(); final Iterator<? extends T> secondIterator = second.iterator(); while (firstIterator.hasNext()) { if (!secondIterator.hasNext()) { return false; } if (!Comparer.equals(firstIterator.next(), secondIterator.next())) { return false; } } return !secondIterator.hasNext(); }
public static <T> boolean sequenceEquals(final Iterable<? extends T> first, final Iterable<? extends T> second) { VerifyArgument.notNull(first, "first"); VerifyArgument.notNull(second, "second"); if (first == second) { return true; } if (first instanceof List<?> && second instanceof List<?>) { return sequenceDeepEquals((List<?>) first, (List<?>) second); } final Iterator<? extends T> firstIterator = first.iterator(); final Iterator<? extends T> secondIterator = second.iterator(); while (firstIterator.hasNext()) { if (!secondIterator.hasNext()) { return false; } if (!Comparer.equals(firstIterator.next(), secondIterator.next())) { return false; } } return !secondIterator.hasNext(); }