diff --git a/infer/src/nullsafe/modelTables.ml b/infer/src/nullsafe/modelTables.ml index 443079a53..298134b00 100644 --- a/infer/src/nullsafe/modelTables.ml +++ b/infer/src/nullsafe/modelTables.ml @@ -715,15 +715,106 @@ let nonnull_alternatives_table = let field_nullability = - [ ("android.net.Uri.EMPTY", o) - ; ("java.lang.Boolean.TRUE", o) + [ ("android.content.pm.ApplicationInfo.dataDir", o) + ; ("android.content.pm.ApplicationInfo.deviceProtectedDataDir", o) + ; ("android.content.pm.ApplicationInfo.nativeLibraryDir", o) + ; ("android.content.pm.ApplicationInfo.publicSourceDir", o) + ; ("android.content.pm.ApplicationInfo.sourceDir", o) + ; ("android.content.pm.ApplicationInfo.storageUuid", o) + ; ( "android.content.pm.ApplicationInfo.processName" + , o (* From the "process" attribute or, if not set, the same as packageName *) ) + ; ( "android.content.pm.PackageInfo.activities" + , n (* Array of all tags included under , or null if there were none *) + ) + ; ( "android.content.pm.PackageInfo.applicationInfo" + , n (* Information collected from the tag, or null if there was none. *) ) + ; ("android.content.pm.PackageInfo.packageName", o) + ; ("android.content.pm.PackageInfo.signatures", o) + ; ( "android.content.pm.PackageInfo.services" + , n (* Array of all tags included under , or null if there were none. *) + ) + ; ("android.content.pm.PackageInfo.versionName", o) + ; ( "android.content.pm.PackageItemInfo.metaData" + , n + (* This field will only be filled in if you set the PackageManager#GET_META_DATA flag when requesting the info *) + ) + ; ("android.content.pm.PackageItemInfo.name", o) + ; ("android.content.pm.PackageItemInfo.packageName", o) + ; ( "android.content.pm.ResolveInfo.activityInfo" + , n (* Exactly one of activityInfo, serviceInfo, or providerInfo will be non-null. *) ) + ; ( "android.content.pm.ResolveInfo.serviceInfo" + , n (* Exactly one of activityInfo, serviceInfo, or providerInfo will be non-null. *) ) + ; ( "android.content.pm.ResolveInfo.providerInfo" + , n (* Exactly one of activityInfo, serviceInfo, or providerInfo will be non-null. *) ) + ; ("android.content.res.Configuration.locale", o) + ; ("android.graphics.Typeface.BOLD", o) + ; ("android.graphics.Typeface.DEFAULT", o) + ; ("android.graphics.Typeface.DEFAULT_BOLD", o) + ; ("android.graphics.Typeface.MONOSPACE", o) + ; ("android.graphics.Typeface.SANS_SERIF", o) + ; ("android.graphics.Typeface.SERIF", o) + ; ("android.hardware.SensorEvent.values", o) + ; ("android.net.Uri.EMPTY", o) + ; ("android.provider.MediaStore$Images$Media.EXTERNAL_CONTENT_URI", o) + ; ("android.provider.MediaStore$Images$Media.INTERNAL_CONTENT_URI", o) + ; ("android.opengl.EGL10.EGL_NO_CONTEXT", o) + ; ("android.opengl.EGL10.EGL_NO_DISPLAY", o) + ; ("android.opengl.EGL10.EGL_NO_SURFACE", o) + ; ("android.opengl.EGL14.EGL_NO_CONTEXT", o) + ; ("android.opengl.EGL14.EGL_NO_DISPLAY", o) + ; ("android.opengl.EGL14.EGL_NO_SURFACE", o) + ; ("android.os.Bundle.EMPTY", o) + ; ("android.os.Build.BRAND", o) + ; ("android.os.Build.BOARD", o) + ; ("android.os.Build.DEVICE", o) + ; ("android.os.Build.DISPLAY", o) + ; ("android.os.Build.FINGERPRINT", o) + ; ("android.os.Build.HARDWARE", o) + ; ("android.os.Build.MANUFACTURER", o) + ; ("android.os.Build.PRODUCT", o) + ; ("android.os.Build.SERIAL", o) + ; ("android.os.Build.SUPPORTED_ABIS", o) + ; ( "android.os.Message.obj" + , n (* An extra object going with the message - null if was not attached *) ) + ; ("android.util.Patterns.DOMAIN_NAME", o) + ; ("android.util.Patterns.EMAIL_ADDRESS", o) + ; ("android.util.Patterns.IP_ADDRESS", o) + ; ("android.util.Patterns.PHONE", o) + ; ("android.util.Patterns.WEB_URL", o) + ; ("androidx.core.text.TextDirectionHeuristicsCompat.ANYRTL_LTR", o) + ; ("androidx.core.text.TextDirectionHeuristicsCompat.FIRSTSTRONG_LTR", o) + ; ("androidx.core.text.TextDirectionHeuristicsCompat.FIRSTSTRONG_RTL", o) + ; ("androidx.core.text.TextDirectionHeuristicsCompat.LOCALE", o) + ; ("androidx.core.text.TextDirectionHeuristicsCompat.LTR", o) + ; ("androidx.core.text.TextDirectionHeuristicsCompat.RTL", o) ; ("java.lang.Boolean.FALSE", o) + ; ("java.lang.Boolean.TRUE", o) + ; ("java.lang.Boolean.TYPE", o) + ; ("java.lang.Integer.TYPE", o) + ; ("java.lang.Void.TYPE", o) + ; ("java.lang.Float.TYPE", o) + ; ("java.lang.Long.TYPE", o) + ; ("java.lang.Short.TYPE", o) + ; ("java.lang.Double.TYPE", o) + ; ("java.lang.Byte.TYPE", o) + ; ("java.lang.System.in", o) + ; ("java.lang.System.out", o) + ; ("java.lang.System.err", o) + ; ("java.nio.ByteOrder.BIG_ENDIAN", o) + ; ("java.nio.ByteOrder.LITTLE_ENDIAN", o) ; ("java.nio.charset.StandardCharsets.ISO_8859_1", o) ; ("java.nio.charset.StandardCharsets.US_ASCII", o) ; ("java.nio.charset.StandardCharsets.UTF_16", o) ; ("java.nio.charset.StandardCharsets.UTF_16BE", o) ; ("java.nio.charset.StandardCharsets.UTF_16LE", o) - ; ("java.nio.charset.StandardCharsets.UTF_8", o) ] + ; ("java.nio.charset.StandardCharsets.UTF_8", o) + ; ( "com.google.android.exoplayer2.source.dash.manifest.AdaptationSet.representations" + , o (* Set in the constructor, where this is non-nullable *) ) + ; ("com.google.android.exoplayer2.source.dash.manifest.Representation.format", o) + ; ("com.google.android.exoplayer2.upstream.DataSpec.fbDataSpecExtension", o) + ; ( "com.google.android.exoplayer2.upstream.DataSpec.uri" + , o (* Set in the constructor, where this is non-nullable *) ) + ; ("com.fasterxml.jackson.databind.node.JsonNodeFactory.instance", o) ] let field_nullability_table =