blob: 8b9e1e111b5c3ab8def7fe0e8b65b0232c351b7c [file] [log] [blame]
import org.checkerframework.checker.nullness.qual.*;
import org.checkerframework.checker.nullness.qual.EnsuresNonNullIf;
public class AssertParameterNullness {
/** True iff both sequences are non-null and have the same length. */
@EnsuresNonNullIf(
result = true,
expression = {"#1", "#2"})
/* pure */ public static boolean sameLength(
final boolean @Nullable [] seq1, final boolean @Nullable [] seq2) {
if ((seq1 != null) && (seq2 != null) && seq1.length == seq2.length) {
return true;
}
return false;
}
/* pure */ public static boolean pairwiseEqual(
boolean @Nullable [] seq3, boolean @Nullable [] seq4) {
if (sameLength(seq3, seq4)) {
boolean b1 = seq3[0];
boolean b2 = seq4[0];
} else {
// :: error: (accessing.nullable)
boolean b1 = seq3[0];
// :: error: (accessing.nullable)
boolean b2 = seq4[0];
}
return true;
}
}