| // Test case for issue #1345: |
| // https://github.com/typetools/checker-framework/issues/1345 |
| |
| // @skip-test until the issue is resolved |
| |
| import java.math.BigDecimal; |
| import java.util.stream.Stream; |
| import org.checkerframework.checker.nullness.qual.*; |
| import org.checkerframework.checker.nullness.util.Opt; |
| |
| public class Issue1345 { |
| |
| @EnsuresNonNullIf(expression = "#1", result = true) |
| static boolean isNonNull(@Nullable Object o) { |
| return o != null; |
| } |
| |
| void filterPresent_Optional(Stream<@Nullable BigDecimal> s) { |
| Stream<@NonNull BigDecimal> filtered = s.<BigDecimal>filter(Issue1345::isNonNull); |
| } |
| |
| void filterPresent_Opt(@Nullable Object p) { |
| @NonNull Object o = Opt.filter(p, Opt::isPresent); |
| } |
| } |