[infer][java] Separate the builtins from the other models for a better modularity

Summary: The Infer builtins can be used in the e2e tests, but those tests should not depend on the Infer models to avoid cyclic dependencies. This diff separates the models and the Infer builtins in two directories so that the test can depend on the builtins without depending on the models

Reviewed By: sblackshear

Differential Revision: D3929478

fbshipit-source-id: 7d0ab79
master
Jeremy Dubreil 8 years ago committed by Facebook Github Bot 0
parent 051fbd779c
commit 168c613ac9

@ -78,6 +78,7 @@ BUILD_DIR = $(INFER_DIR)/_build
ETC_DIR = $(INFER_DIR)/etc ETC_DIR = $(INFER_DIR)/etc
LIB_DIR = $(INFER_DIR)/lib LIB_DIR = $(INFER_DIR)/lib
MODELS_DIR = $(INFER_DIR)/models MODELS_DIR = $(INFER_DIR)/models
JAVA_BUILTINS_DIR = $(MODELS_DIR)/java/builtins
SRC_DIR = $(INFER_DIR)/src SRC_DIR = $(INFER_DIR)/src
ANNOT_DIR = $(SRC_DIR)/_build ANNOT_DIR = $(SRC_DIR)/_build

@ -1,11 +1,21 @@
java_library( java_library(
name = 'models', name = 'builtins',
srcs = glob(['src/**/*.java']), srcs = glob(['builtins/**/*.java']),
visibility = [ visibility = [
'PUBLIC', 'PUBLIC',
], ],
deps = [ )
'//dependencies/java/jackson:jackson',
'//infer/lib/java/android:android', java_library(
] name = 'models',
srcs = glob(['src/**/*.java']),
visibility = [
'PUBLIC',
],
deps = [
':builtins',
'//dependencies/java/jackson:jackson',
'//infer/annotations:annotations',
'//infer/lib/java/android:android',
]
) )

@ -11,8 +11,6 @@ include $(ROOT_DIR)/Makefile.config
INFER = INFER_ANALYZE_MODELS=1 $(INFER_BIN) \ INFER = INFER_ANALYZE_MODELS=1 $(INFER_BIN) \
--buck --analyzer infer --multicore 1 --buck --analyzer infer --multicore 1
JAVA_MODELS_SOURCES = $(shell find $(JAVA_MODELS_DIR)/src -name "*.java")
ANDROID_JAR = $(LIB_DIR)/java/android/android-19.jar ANDROID_JAR = $(LIB_DIR)/java/android/android-19.jar
JACKSON_JAR = $(DEPENDENCIES_DIR)/java/jackson/jackson-2.2.3.jar JACKSON_JAR = $(DEPENDENCIES_DIR)/java/jackson/jackson-2.2.3.jar
INFER_ANNOTATIONS_JAR = $(ANNOTATIONS_DIR)/annotations.jar INFER_ANNOTATIONS_JAR = $(ANNOTATIONS_DIR)/annotations.jar
@ -22,7 +20,10 @@ INFER_REPORT = $(MODELS_OUT)/infer/report.json
MODELS_JAR = models.jar MODELS_JAR = models.jar
DEPLOYED_MODELS_JAR = $(LIB_DIR)/java/models.jar DEPLOYED_MODELS_JAR = $(LIB_DIR)/java/models.jar
JAVA_SOURCES = $(shell find src/ -name "*.java") JAVA_BUILTINS_SOURCES = $(shell find builtins -name "*.java")
JAVA_MODELS_SOURCES = $(shell find src -name "*.java")
JAVA_SOURCES = $(JAVA_BUILTINS_SOURCES) $(JAVA_MODELS_SOURCES)
all: $(MODELS_JAR) all: $(MODELS_JAR)
@ -31,7 +32,7 @@ clean:
@rm -f $(MODELS_JAR) @rm -f $(MODELS_JAR)
@rm -f $(DEPLOYED_MODELS_JAR) @rm -f $(DEPLOYED_MODELS_JAR)
$(INFER_REPORT): $(ANDROID_JAR) $(JACKSON_JAR) $(JAVA_SOURCES) $(JAVA_DEPS) $(INFER_ANNOTATIONS_JAR) $(INFER_REPORT): $(ANDROID_JAR) $(JACKSON_JAR) $(JAVA_DEPS) $(INFER_ANNOTATIONS_JAR) $(JAVA_SOURCES)
@rm -fr $(MODELS_OUT) @rm -fr $(MODELS_OUT)
mkdir -p $(MODELS_OUT) mkdir -p $(MODELS_OUT)
@rm -f $(DEPLOYED_MODELS_JAR) @rm -f $(DEPLOYED_MODELS_JAR)

@ -8,7 +8,7 @@
* of patent rights can be found in the PATENTS file in the same directory. * of patent rights can be found in the PATENTS file in the same directory.
*/ */
package com.facebook.infer.models; package com.facebook.infer.builtins;
public class InferArray { public class InferArray {

@ -8,7 +8,7 @@
* of patent rights can be found in the PATENTS file in the same directory. * of patent rights can be found in the PATENTS file in the same directory.
*/ */
package com.facebook.infer.models; package com.facebook.infer.builtins;
public class InferBuiltins { public class InferBuiltins {

@ -8,7 +8,7 @@
* of patent rights can be found in the PATENTS file in the same directory. * of patent rights can be found in the PATENTS file in the same directory.
*/ */
package com.facebook.infer.models; package com.facebook.infer.builtins;
import java.io.Closeable; import java.io.Closeable;

@ -7,7 +7,7 @@
* of patent rights can be found in the PATENTS file in the same directory. * of patent rights can be found in the PATENTS file in the same directory.
*/ */
package com.facebook.infer.models; package com.facebook.infer.builtins;
/** WARNING! These methods are for testing the taint analysis only! Don't use them in models or in /** WARNING! These methods are for testing the taint analysis only! Don't use them in models or in
* real code. * real code.

@ -8,7 +8,7 @@
* of patent rights can be found in the PATENTS file in the same directory. * of patent rights can be found in the PATENTS file in the same directory.
*/ */
package com.facebook.infer.models; package com.facebook.infer.builtins;
import java.io.IOException; import java.io.IOException;
import java.net.SocketException; import java.net.SocketException;

@ -7,7 +7,7 @@
* of patent rights can be found in the PATENTS file in the same directory. * of patent rights can be found in the PATENTS file in the same directory.
*/ */
package com.facebook.infer.models; package com.facebook.infer.builtins;
public class InferUtils { public class InferUtils {

@ -13,7 +13,7 @@ import android.content.res.TypedArray;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.view.ContextThemeWrapper; import android.view.ContextThemeWrapper;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public abstract class Activity extends ContextThemeWrapper { public abstract class Activity extends ContextThemeWrapper {

@ -9,8 +9,8 @@
package android.content; package android.content;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import android.database.Cursor; import android.database.Cursor;
import android.database.sqlite.SQLiteCursor; import android.database.sqlite.SQLiteCursor;

@ -14,7 +14,7 @@ import android.database.sqlite.SQLiteCursor;
import android.net.Uri; import android.net.Uri;
import android.os.CancellationSignal; import android.os.CancellationSignal;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class ContentResolver { public class ContentResolver {

@ -9,7 +9,7 @@
package android.content; package android.content;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class ContentValues { public class ContentValues {

@ -11,7 +11,7 @@ package android.content;
import android.content.res.TypedArray; import android.content.res.TypedArray;
import android.util.AttributeSet; import android.util.AttributeSet;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class Context { public class Context {

@ -11,7 +11,7 @@ package android.content.res;
import android.util.AttributeSet; import android.util.AttributeSet;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class Resources { public class Resources {

@ -9,7 +9,7 @@
package android.content.res; package android.content.res;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class TypedArray { public class TypedArray {

@ -10,8 +10,8 @@
package android.database; package android.database;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class Cursor { public class Cursor {

@ -9,8 +9,8 @@
package android.database; package android.database;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class CursorWrapper extends Cursor { public class CursorWrapper extends Cursor {
protected final Cursor mCursor; protected final Cursor mCursor;

@ -10,8 +10,8 @@
package android.database.sqlite; package android.database.sqlite;
import android.database.Cursor; import android.database.Cursor;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class SQLiteCursor extends Cursor { public class SQLiteCursor extends Cursor {

@ -9,8 +9,8 @@
package com.fasterxml.jackson.core; package com.fasterxml.jackson.core;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.Closeable; import java.io.Closeable;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package com.fasterxml.jackson.core.json; package com.fasterxml.jackson.core.json;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import com.fasterxml.jackson.core.Base64Variant; import com.fasterxml.jackson.core.Base64Variant;
import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.core.JsonToken; import com.fasterxml.jackson.core.JsonToken;

@ -10,7 +10,7 @@
package com.google.common.base; package com.google.common.base;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import static com.facebook.infer.models.InferBuiltins.assume; import static com.facebook.infer.builtins.InferBuiltins.assume;
public final class Preconditions { public final class Preconditions {

@ -11,7 +11,7 @@ package com.google.common.collect;
import java.util.NoSuchElementException; import java.util.NoSuchElementException;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import javax.annotation.Nullable; import javax.annotation.Nullable;

@ -9,8 +9,8 @@
package com.google.common.io; package com.google.common.io;
import com.facebook.infer.models.InferCloseables; import com.facebook.infer.builtins.InferCloseables;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.Closeable; import java.io.Closeable;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package com.squareup.okhttp.internal; package com.squareup.okhttp.internal;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package com.squareup.okhttp.internal; package com.squareup.okhttp.internal;
import com.facebook.infer.models.InferCloseables; import com.facebook.infer.builtins.InferCloseables;
import java.io.Closeable; import java.io.Closeable;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class BufferedInputStream extends FilterInputStream { public class BufferedInputStream extends FilterInputStream {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class BufferedOutputStream extends FilterOutputStream { public class BufferedOutputStream extends FilterOutputStream {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class BufferedReader extends Reader { public class BufferedReader extends Reader {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class BufferedWriter extends Writer { public class BufferedWriter extends Writer {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class DataInputStream extends FilterInputStream { public class DataInputStream extends FilterInputStream {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class DataOutputStream extends FilterOutputStream { public class DataOutputStream extends FilterOutputStream {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import javax.annotation.Nullable; import javax.annotation.Nullable;
public class File { public class File {

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.nio.FileChannelImpl; import java.nio.FileChannelImpl;

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.nio.FileChannelImpl; import java.nio.FileChannelImpl;
import java.nio.channels.FileChannel; import java.nio.channels.FileChannel;

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class FilterInputStream extends InputStream { public class FilterInputStream extends InputStream {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class FilterOutputStream extends OutputStream { public class FilterOutputStream extends OutputStream {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public abstract class FilterReader extends Reader { public abstract class FilterReader extends Reader {

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class InputStream { public class InputStream {

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import com.facebook.infer.models.InferUtils; import com.facebook.infer.builtins.InferUtils;
import java.nio.charset.Charset; import java.nio.charset.Charset;
import java.nio.charset.CharsetDecoder; import java.nio.charset.CharsetDecoder;

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class ObjectInputStream extends InputStream { public class ObjectInputStream extends InputStream {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class ObjectOutputStream extends OutputStream { public class ObjectOutputStream extends OutputStream {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public abstract class OutputStream implements Closeable { public abstract class OutputStream implements Closeable {

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import com.facebook.infer.models.InferUtils; import com.facebook.infer.builtins.InferUtils;
import java.nio.charset.Charset; import java.nio.charset.Charset;
import java.nio.charset.CharsetEncoder; import java.nio.charset.CharsetEncoder;

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class PipedInputStream extends InputStream { public class PipedInputStream extends InputStream {

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class PipedOutputStream extends OutputStream { public class PipedOutputStream extends OutputStream {

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class PipedReader extends Reader { public class PipedReader extends Reader {

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public abstract class PipedWriter extends Writer { public abstract class PipedWriter extends Writer {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class PrintWriter extends Writer { public class PrintWriter extends Writer {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class PushbackInputStream extends FilterInputStream { public class PushbackInputStream extends FilterInputStream {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class PushbackReader extends FilterReader { public class PushbackReader extends FilterReader {

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.nio.FileChannelImpl; import java.nio.FileChannelImpl;
import java.nio.channels.FileChannel; import java.nio.channels.FileChannel;

@ -9,8 +9,8 @@
package java.io; package java.io;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public abstract class Reader { public abstract class Reader {

@ -9,7 +9,7 @@
package java.io; package java.io;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public abstract class Writer implements Closeable { public abstract class Writer implements Closeable {

@ -9,7 +9,7 @@
package java.lang; package java.lang;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class Object { public class Object {

@ -9,7 +9,7 @@
package java.lang; package java.lang;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.*; import java.io.*;

@ -9,7 +9,7 @@
package java.lang; package java.lang;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.File; import java.io.File;
import java.io.FileDescriptor; import java.io.FileDescriptor;

@ -9,8 +9,8 @@
package java.lang; package java.lang;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public final class String { public final class String {

@ -9,8 +9,8 @@
package java.lang; package java.lang;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;

@ -9,8 +9,8 @@
package java.lang; package java.lang;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
class Thread implements Runnable { class Thread implements Runnable {

@ -9,7 +9,7 @@
package java.lang.reflect; package java.lang.reflect;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public final class Array { public final class Array {

@ -9,7 +9,7 @@
package java.net; package java.net;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class HttpURLConnection extends URLConnection { public class HttpURLConnection extends URLConnection {

@ -9,8 +9,8 @@
package java.net; package java.net;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;

@ -9,7 +9,7 @@
package java.net; package java.net;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.IOException; import java.io.IOException;

@ -13,7 +13,7 @@ import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.OutputStream; import java.io.OutputStream;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class Socket { public class Socket {

@ -11,7 +11,7 @@ package java.net;
import javax.net.ssl.HttpsURLConnection; import javax.net.ssl.HttpsURLConnection;
import java.util.Hashtable; import java.util.Hashtable;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public final class URL implements java.io.Serializable { public final class URL implements java.io.Serializable {

@ -9,7 +9,7 @@
package java.nio; package java.nio;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FileDescriptor; import java.io.FileDescriptor;
import java.io.FileInputStream; import java.io.FileInputStream;

@ -9,7 +9,7 @@
package java.nio.channels; package java.nio.channels;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import java.io.IOException; import java.io.IOException;
import java.nio.channels.spi.AbstractInterruptibleChannel; import java.nio.channels.spi.AbstractInterruptibleChannel;

@ -9,7 +9,7 @@
package java.security; package java.security;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterInputStream; import java.io.FilterInputStream;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package java.security; package java.security;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterOutputStream; import java.io.FilterOutputStream;
import java.io.IOException; import java.io.IOException;

@ -10,7 +10,7 @@
package java.util; package java.util;
import java.io.*; import java.io.*;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
/** /**
* A recency abstraction for hashmaps that remembers only the last two * A recency abstraction for hashmaps that remembers only the last two

@ -9,7 +9,7 @@
package java.util; package java.util;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilder;
import java.io.*; import java.io.*;

@ -9,7 +9,7 @@
package java.util; package java.util;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;

@ -9,7 +9,7 @@
package java.util; package java.util;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class Vector<E> extends AbstractList<E> { public class Vector<E> extends AbstractList<E> {

@ -9,8 +9,8 @@
package java.util.concurrent.locks; package java.util.concurrent.locks;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
/* /*
Lock is in actuality an interface, but is implemented here as an abstract class for Lock is in actuality an interface, but is implemented here as an abstract class for

@ -19,8 +19,8 @@
*/ */
package java.util.concurrent.locks; package java.util.concurrent.locks;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public abstract class ReentrantLock extends Lock implements java.io.Serializable { public abstract class ReentrantLock extends Lock implements java.io.Serializable {

@ -9,7 +9,7 @@
package java.util.jar; package java.util.jar;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;

@ -9,7 +9,7 @@
package java.util.jar; package java.util.jar;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.IOException; import java.io.IOException;
import java.io.OutputStream; import java.io.OutputStream;

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterInputStream; import java.io.FilterInputStream;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterOutputStream; import java.io.FilterOutputStream;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class Deflater { public class Deflater {

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterInputStream; import java.io.FilterInputStream;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterOutputStream; import java.io.FilterOutputStream;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.IOException; import java.io.IOException;
import java.io.OutputStream; import java.io.OutputStream;

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class Inflater { public class Inflater {

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterInputStream; import java.io.FilterInputStream;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterOutputStream; import java.io.FilterOutputStream;
import java.io.IOException; import java.io.IOException;

@ -9,8 +9,8 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package java.util.zip; package java.util.zip;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.BufferedInputStream; import java.io.BufferedInputStream;
import java.io.FileInputStream; import java.io.FileInputStream;

@ -14,7 +14,7 @@ import java.io.FileOutputStream;
import java.io.IOException; import java.io.IOException;
import java.io.OutputStream; import java.io.OutputStream;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class ZipOutputStream extends DeflaterOutputStream { public class ZipOutputStream extends DeflaterOutputStream {

@ -9,7 +9,7 @@
package javax.crypto; package javax.crypto;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterInputStream; import java.io.FilterInputStream;
import java.io.IOException; import java.io.IOException;

@ -9,7 +9,7 @@
package javax.crypto; package javax.crypto;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
import java.io.FilterOutputStream; import java.io.FilterOutputStream;
import java.io.IOException; import java.io.IOException;

@ -13,7 +13,7 @@ import java.io.IOException;
import java.net.InetAddress; import java.net.InetAddress;
import java.net.Socket; import java.net.Socket;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class SocketFactory { public class SocketFactory {

@ -13,8 +13,8 @@ import java.net.Socket;
import javax.net.SocketFactory; import javax.net.SocketFactory;
import javax.net.ssl.SSLSession; import javax.net.ssl.SSLSession;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import com.facebook.infer.models.InferUndefined; import com.facebook.infer.builtins.InferUndefined;
public class HostnameVerifier { public class HostnameVerifier {

@ -9,7 +9,7 @@
package javax.net.ssl; package javax.net.ssl;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
import java.net.HttpURLConnection; import java.net.HttpURLConnection;
import java.net.URL; import java.net.URL;

@ -15,7 +15,7 @@ import java.net.Socket;
import javax.net.SocketFactory; import javax.net.SocketFactory;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class SSLSocketFactory extends SocketFactory { public class SSLSocketFactory extends SocketFactory {

@ -9,7 +9,7 @@
package junit.framework; package junit.framework;
import com.facebook.infer.models.InferBuiltins; import com.facebook.infer.builtins.InferBuiltins;
public class Assert { public class Assert {

@ -477,7 +477,7 @@ let is_class_initializer =
let is_infer_undefined pn => let is_infer_undefined pn =>
switch pn { switch pn {
| Java j => | Java j =>
let regexp = Str.regexp "com.facebook.infer.models.InferUndefined"; let regexp = Str.regexp "com.facebook.infer.builtins.InferUndefined";
Str.string_match regexp (java_get_class_name j) 0 Str.string_match regexp (java_get_class_name j) 0
| _ => | _ =>
/* TODO: add cases for obj-c, c, c++ */ /* TODO: add cases for obj-c, c, c++ */

@ -17,7 +17,7 @@ open PatternMatch
let sources0 = [ let sources0 = [
(* for testing only *) (* for testing only *)
{ {
classname = "com.facebook.infer.models.InferTaint"; classname = "com.facebook.infer.builtins.InferTaint";
method_name = "inferSecretSource"; method_name = "inferSecretSource";
ret_type = JConfig.object_cl; ret_type = JConfig.object_cl;
params = []; params = [];
@ -26,7 +26,7 @@ let sources0 = [
language = Config.Java; language = Config.Java;
}; };
{ {
classname = "com.facebook.infer.models.InferTaint"; classname = "com.facebook.infer.builtins.InferTaint";
method_name = "inferSecretSourceUndefined"; method_name = "inferSecretSourceUndefined";
ret_type = JConfig.object_cl; ret_type = JConfig.object_cl;
params = []; params = [];
@ -63,7 +63,7 @@ let sources0 = [
let sinks = [ let sinks = [
(* for testing only *) (* for testing only *)
({ ({
classname = "com.facebook.infer.models.InferTaint"; classname = "com.facebook.infer.builtins.InferTaint";
method_name = "inferSensitiveSink"; method_name = "inferSensitiveSink";
ret_type = "void"; ret_type = "void";
params = [JConfig.object_cl]; params = [JConfig.object_cl];
@ -72,7 +72,7 @@ let sinks = [
language = Config.Java language = Config.Java
}, [0]); }, [0]);
({ ({
classname = "com.facebook.infer.models.InferTaint"; classname = "com.facebook.infer.builtins.InferTaint";
method_name = "inferSensitiveSinkUndefined"; method_name = "inferSensitiveSinkUndefined";
ret_type = "void"; ret_type = "void";
params = [JConfig.object_cl]; params = [JConfig.object_cl];

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save