[Java] Add support for com.google.common.base.MoreObjects#firstNonNull

This commit is contained in:
Jonathan Leitschuh
2021-05-03 12:58:00 -04:00
parent b2c0259197
commit dfad1fc740
4 changed files with 19 additions and 1 deletions

View File

@@ -35,7 +35,8 @@ private class GuavaBaseCsv extends SummaryModelCsv {
"com.google.common.base;Splitter;false;splitToList;(CharSequence);;Argument[0];ReturnValue;taint",
"com.google.common.base;Splitter;false;splitToStream;(CharSequence);;Argument[0];ReturnValue;taint",
"com.google.common.base;Splitter$MapSplitter;false;split;(CharSequence);;Argument[0];ReturnValue;taint",
"com.google.common.base;Preconditions;false;checkNotNull;;;Argument[0];ReturnValue;value"
"com.google.common.base;Preconditions;false;checkNotNull;;;Argument[0];ReturnValue;value",
"com.google.common.base;MoreObjects;false;firstNonNull;;;Argument[0..1];ReturnValue;value"
]
}
}

View File

@@ -60,4 +60,10 @@ class TestBase {
void test4() {
sink(Preconditions.checkNotNull(taint())); // $numTaintFlow=1
}
void test5() {
sink(MoreObjects.firstNonNull(taint(), taint())); // $numTaintFlow=2
sink(MoreObjects.firstNonNull(null, taint())); // $numTaintFlow=1
sink(MoreObjects.firstNonNull(taint(), null)); // $numTaintFlow=1
}
}

View File

@@ -0,0 +1,9 @@
package com.google.common.base;
import org.checkerframework.checker.nullness.qual.Nullable;
public final class MoreObjects {
public static <T> T firstNonNull(@Nullable T first, @Nullable T second) {
return null;
}
}