diff options
| author | 2019-10-10 07:00:20 -0700 | |
|---|---|---|
| committer | 2019-10-10 07:00:20 -0700 | |
| commit | a0ea746c9a7211e10f2d0b6544576006b250eb6d (patch) | |
| tree | 779357f6b6afc9e41d0cb924ffd14a10a4fe32ee | |
| parent | cf03f69025bfec93cad0a364acf765a5401e5be1 (diff) | |
| parent | ab911951aed8ce17a6c623e8acc4101b12553de1 (diff) | |
Merge "apilint: suppress certain nullability lints"
am: ab911951ae
Change-Id: I3e57c0cd24ba6c46e9cd0d9cdc3aade4e0651f5e
| -rw-r--r-- | tools/apilint/apilint.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/tools/apilint/apilint.py b/tools/apilint/apilint.py index 9e42c044e209..912c1ad377c1 100644 --- a/tools/apilint/apilint.py +++ b/tools/apilint/apilint.py @@ -1976,7 +1976,9 @@ def verify_nullability(clazz): """Catches missing nullability annotations""" for f in clazz.fields: - if f.value is not None and 'static' in f.split and 'final' in f.split: + if "enum_constant" in f.split: + continue # Enum constants are never null + if f.value is not None and 'final' in f.split: continue # Nullability of constants can be inferred. if f.typ not in PRIMITIVES and not has_nullability(f.annotations): error(clazz, f, "M12", "Field must be marked either @NonNull or @Nullable") @@ -1985,8 +1987,12 @@ def verify_nullability(clazz): verify_nullability_args(clazz, c) for m in clazz.methods: - if m.name == "writeToParcel" or m.name == "onReceive": - continue # Parcelable.writeToParcel() and BroadcastReceiver.onReceive() are not yet annotated + if m.name == "writeToParcel" or m.name == "onReceive" or m.name == "onBind": + continue # Parcelable.writeToParcel(), BroadcastReceiver.onReceive(), and Service.onBind() are not yet annotated + + if (m.name == "equals" and m.args == ["java.lang.Object"] or + m.name == "toString" and m.args == []): + continue # Nullability of equals and toString is implicit. if m.typ not in PRIMITIVES and not has_nullability(m.annotations): error(clazz, m, "M12", "Return value must be marked either @NonNull or @Nullable") |