Summary: This annotation can then be used to suppress the warnings on non-android Java projects. Reviewed By: sblackshear Differential Revision: D4544858 fbshipit-source-id: 8a0b8famaster
parent
1065be3286
commit
61b49553b5
@ -0,0 +1,25 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2004 - present Facebook, Inc.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* This source code is licensed under the BSD style license found in the
|
||||||
|
* LICENSE file in the root directory of this source tree. An additional grant
|
||||||
|
* of patent rights can be found in the PATENTS file in the same directory.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.facebook.infer.annotation;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
@Retention(RetentionPolicy.CLASS)
|
||||||
|
@Target({
|
||||||
|
ElementType.CONSTRUCTOR,
|
||||||
|
ElementType.METHOD,
|
||||||
|
})
|
||||||
|
|
||||||
|
public @interface SuppressLint {
|
||||||
|
String[] value();
|
||||||
|
}
|
@ -0,0 +1,54 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2013 - present Facebook, Inc.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* This source code is licensed under the BSD style license found in the
|
||||||
|
* LICENSE file in the root directory of this source tree. An additional grant
|
||||||
|
* of patent rights can be found in the PATENTS file in the same directory.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package codetoanalyze.java.infer;
|
||||||
|
|
||||||
|
import com.facebook.infer.annotation.SuppressLint;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
|
||||||
|
|
||||||
|
// @SuppressLint("Suppressing all the warnings in a class is not supported yet")
|
||||||
|
class SuppressAllWarnigsInTheClass {
|
||||||
|
|
||||||
|
void shouldNotReportNPE() {
|
||||||
|
Object object = null;
|
||||||
|
object.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
void shouldNotReportResourceLeak() {
|
||||||
|
try {
|
||||||
|
FileInputStream fis = new FileInputStream(new File("whatever.txt"));
|
||||||
|
} catch (IOException e) {}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public class SuppressLintExample {
|
||||||
|
|
||||||
|
@SuppressLint("Suppressing by warning type not supported yet")
|
||||||
|
SuppressLintExample() {
|
||||||
|
Object object = null;
|
||||||
|
object.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
void shouldReportNPE() {
|
||||||
|
Object object = null;
|
||||||
|
object.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressLint("Suppressing by warning type not supported yet")
|
||||||
|
void shouldNotReportNPE() {
|
||||||
|
Object object = null;
|
||||||
|
object.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in new issue