Generate tests and stubs

This commit is contained in:
Joe Farebrother
2021-07-29 15:01:50 +01:00
parent 3bcb46f875
commit 096509b9aa
23 changed files with 853 additions and 785 deletions

View File

@@ -0,0 +1,138 @@
package generatedtest;
import com.google.common.cache.Cache;
import com.google.common.cache.LoadingCache;
import com.google.common.collect.ImmutableMap;
import java.util.Map;
import java.util.concurrent.ConcurrentMap;
// Test case generated by GenerateFlowTestCase.ql
public class Test {
Object getMapKey(Object container) { return null; }
Object getMapValue(Object container) { return null; }
Object newWithElement(Object element) { return null; }
Object newWithMapKey(Object element) { return null; }
Object newWithMapValue(Object element) { return null; }
Object source() { return null; }
void sink(Object o) { }
public void test() throws Exception {
{
// "com.google.common.cache;Cache;true;asMap;();;MapKey of Argument[-1];MapKey of ReturnValue;value"
ConcurrentMap out = null;
LoadingCache in = (LoadingCache)newWithMapKey(source());
out = in.asMap();
sink(getMapKey(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;asMap;();;MapKey of Argument[-1];MapKey of ReturnValue;value"
ConcurrentMap out = null;
Cache in = (Cache)newWithMapKey(source());
out = in.asMap();
sink(getMapKey(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;asMap;();;MapValue of Argument[-1];MapValue of ReturnValue;value"
ConcurrentMap out = null;
LoadingCache in = (LoadingCache)newWithMapValue(source());
out = in.asMap();
sink(getMapValue(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;asMap;();;MapValue of Argument[-1];MapValue of ReturnValue;value"
ConcurrentMap out = null;
Cache in = (Cache)newWithMapValue(source());
out = in.asMap();
sink(getMapValue(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;get;(Object,Callable);;MapValue of Argument[-1];ReturnValue;value"
Object out = null;
Cache in = (Cache)newWithMapValue(source());
out = in.get(null, null);
sink(out); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;getAllPresent;(Iterable);;MapValue of Argument[-1];MapValue of ReturnValue;value"
ImmutableMap out = null;
Cache in = (Cache)newWithMapValue(source());
out = in.getAllPresent(null);
sink(getMapValue(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;getIfPresent;(Object);;MapValue of Argument[-1];ReturnValue;value"
Object out = null;
Cache in = (Cache)newWithMapValue(source());
out = in.getIfPresent(null);
sink(out); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;put;(Object,Object);;Argument[0];MapKey of Argument[-1];value"
Cache out = null;
Object in = (Object)source();
out.put(in, null);
sink(getMapKey(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;put;(Object,Object);;Argument[1];MapValue of Argument[-1];value"
Cache out = null;
Object in = (Object)source();
out.put(null, in);
sink(getMapValue(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;putAll;(Map);;MapKey of Argument[0];MapKey of Argument[-1];value"
Cache out = null;
Map in = (Map)newWithMapKey(source());
out.putAll(in);
sink(getMapKey(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;Cache;true;putAll;(Map);;MapValue of Argument[0];MapValue of Argument[-1];value"
Cache out = null;
Map in = (Map)newWithMapValue(source());
out.putAll(in);
sink(getMapValue(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;LoadingCache;true;apply;(Object);;MapValue of Argument[-1];ReturnValue;value"
Object out = null;
LoadingCache in = (LoadingCache)newWithMapValue(source());
out = in.apply(null);
sink(out); // $ hasValueFlow
}
{
// "com.google.common.cache;LoadingCache;true;get;(Object);;MapValue of Argument[-1];ReturnValue;value"
Object out = null;
LoadingCache in = (LoadingCache)newWithMapValue(source());
out = in.get(null);
sink(out); // $ hasValueFlow
}
{
// "com.google.common.cache;LoadingCache;true;getAll;(Iterable);;Element of Argument[0];MapKey of ReturnValue;value"
ImmutableMap out = null;
Iterable in = (Iterable)newWithElement(source());
LoadingCache instance = null;
out = instance.getAll(in);
sink(getMapKey(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;LoadingCache;true;getAll;(Iterable);;MapValue of Argument[-1];MapValue of ReturnValue;value"
ImmutableMap out = null;
LoadingCache in = (LoadingCache)newWithMapValue(source());
out = in.getAll(null);
sink(getMapValue(out)); // $ hasValueFlow
}
{
// "com.google.common.cache;LoadingCache;true;getUnchecked;(Object);;MapValue of Argument[-1];ReturnValue;value"
Object out = null;
LoadingCache in = (LoadingCache)newWithMapValue(source());
out = in.getUnchecked(null);
sink(out); // $ hasValueFlow
}
}
}

View File

@@ -0,0 +1 @@
//semmle-extractor-options: --javac-args -cp ${testdir}/../../../../../stubs/guava-30.0

View File

@@ -0,0 +1,67 @@
import java
import semmle.code.java.dataflow.DataFlow
import semmle.code.java.dataflow.ExternalFlow
import semmle.code.java.dataflow.TaintTracking
import TestUtilities.InlineExpectationsTest
class SummaryModelTest extends SummaryModelCsv {
override predicate row(string row) {
row =
[
//"package;type;overrides;name;signature;ext;inputspec;outputspec;kind",
"generatedtest;Test;false;newWithElement;;;Argument[0];Element of ReturnValue;value",
"generatedtest;Test;false;getMapKey;;;MapKey of Argument[0];ReturnValue;value",
"generatedtest;Test;false;newWithMapKey;;;Argument[0];MapKey of ReturnValue;value",
"generatedtest;Test;false;getMapValue;;;MapValue of Argument[0];ReturnValue;value",
"generatedtest;Test;false;newWithMapValue;;;Argument[0];MapValue of ReturnValue;value"
]
}
}
class ValueFlowConf extends DataFlow::Configuration {
ValueFlowConf() { this = "qltest:valueFlowConf" }
override predicate isSource(DataFlow::Node n) {
n.asExpr().(MethodAccess).getMethod().hasName("source")
}
override predicate isSink(DataFlow::Node n) {
n.asExpr().(Argument).getCall().getCallee().hasName("sink")
}
}
class TaintFlowConf extends TaintTracking::Configuration {
TaintFlowConf() { this = "qltest:taintFlowConf" }
override predicate isSource(DataFlow::Node n) {
n.asExpr().(MethodAccess).getMethod().hasName("source")
}
override predicate isSink(DataFlow::Node n) {
n.asExpr().(Argument).getCall().getCallee().hasName("sink")
}
}
class HasFlowTest extends InlineExpectationsTest {
HasFlowTest() { this = "HasFlowTest" }
override string getARelevantTag() { result = ["hasValueFlow", "hasTaintFlow"] }
override predicate hasActualResult(Location location, string element, string tag, string value) {
tag = "hasValueFlow" and
exists(DataFlow::Node src, DataFlow::Node sink, ValueFlowConf conf | conf.hasFlow(src, sink) |
sink.getLocation() = location and
element = sink.toString() and
value = ""
)
or
tag = "hasTaintFlow" and
exists(DataFlow::Node src, DataFlow::Node sink, TaintFlowConf conf |
conf.hasFlow(src, sink) and not any(ValueFlowConf c).hasFlow(src, sink)
|
sink.getLocation() = location and
element = sink.toString() and
value = ""
)
}
}

View File

@@ -1,25 +1,9 @@
/*
* Copyright (C) 2007 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
// Generated automatically from com.google.common.base.Function for testing purposes, and adjusted manually
package com.google.common.base;
import org.checkerframework.checker.nullness.qual.Nullable;
public interface Function<F, T> extends java.util.function.Function<F, T> {
@Override
T apply(@Nullable F input);
@Override
boolean equals(@Nullable Object object);
public interface Function<F, T> extends java.util.function.Function<F, T>
{
T apply(F p0);
boolean equals(Object p0);
}

View File

@@ -0,0 +1,25 @@
// Generated automatically from com.google.common.cache.Cache for testing purposes
package com.google.common.cache;
import com.google.common.cache.CacheStats;
import com.google.common.collect.ImmutableMap;
import java.util.Map;
import java.util.concurrent.Callable;
import java.util.concurrent.ConcurrentMap;
public interface Cache<K, V>
{
CacheStats stats();
ConcurrentMap<K, V> asMap();
ImmutableMap<K, V> getAllPresent(Iterable<? extends Object> p0);
V get(K p0, Callable<? extends V> p1);
V getIfPresent(Object p0);
long size();
void cleanUp();
void invalidate(Object p0);
void invalidateAll();
void invalidateAll(Iterable<? extends Object> p0);
void put(K p0, V p1);
void putAll(Map<? extends K, ? extends V> p0);
}

View File

@@ -0,0 +1,27 @@
// Generated automatically from com.google.common.cache.CacheStats for testing purposes
package com.google.common.cache;
public class CacheStats
{
protected CacheStats() {}
public CacheStats minus(CacheStats p0){ return null; }
public CacheStats plus(CacheStats p0){ return null; }
public CacheStats(long p0, long p1, long p2, long p3, long p4, long p5){}
public String toString(){ return null; }
public boolean equals(Object p0){ return false; }
public double averageLoadPenalty(){ return 0; }
public double hitRate(){ return 0; }
public double loadExceptionRate(){ return 0; }
public double missRate(){ return 0; }
public int hashCode(){ return 0; }
public long evictionCount(){ return 0; }
public long hitCount(){ return 0; }
public long loadCount(){ return 0; }
public long loadExceptionCount(){ return 0; }
public long loadSuccessCount(){ return 0; }
public long missCount(){ return 0; }
public long requestCount(){ return 0; }
public long totalLoadTime(){ return 0; }
}

View File

@@ -0,0 +1,18 @@
// Generated automatically from com.google.common.cache.LoadingCache for testing purposes
package com.google.common.cache;
import com.google.common.base.Function;
import com.google.common.cache.Cache;
import com.google.common.collect.ImmutableMap;
import java.util.concurrent.ConcurrentMap;
public interface LoadingCache<K, V> extends Cache<K, V>, Function<K, V>
{
ConcurrentMap<K, V> asMap();
ImmutableMap<K, V> getAll(Iterable<? extends K> p0);
V apply(K p0);
V get(K p0);
V getUnchecked(K p0);
void refresh(K p0);
}

View File

@@ -1,90 +1,41 @@
/*
* Copyright (C) 2012 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated automatically from com.google.common.collect.AbstractMultimap for testing purposes
package com.google.common.collect;
import com.google.common.collect.Multimap;
import com.google.common.collect.Multiset;
import java.util.Collection;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.Spliterator;
abstract class AbstractMultimap<K, V> implements Multimap<K, V> {
@Override
public boolean isEmpty() {
return false;
}
@Override
public boolean containsValue(Object value) {
return false;
}
@Override
public boolean containsEntry(Object key, Object value) {
return false;
}
@Override
public boolean remove(Object key, Object value) {
return false;
}
@Override
public boolean put(K key, V value) {
return false;
}
@Override
public boolean putAll(K key, Iterable<? extends V> values) {
return false;
}
@Override
public boolean putAll(Multimap<? extends K, ? extends V> multimap) {
return false;
}
@Override
public Collection<V> replaceValues(K key, Iterable<? extends V> values) {
return null;
}
@Override
public Collection<Entry<K, V>> entries() {
return null;
}
@Override
public Set<K> keySet() {
return null;
}
@Override
public Multiset<K> keys() {
return null;
}
@Override
public Collection<V> values() {
return null;
}
@Override
public Map<K, Collection<V>> asMap() {
return null;
}
abstract class AbstractMultimap<K, V> implements Multimap<K, V>
{
AbstractMultimap(){}
Iterator<V> valueIterator(){ return null; }
Spliterator<Map.Entry<K, V>> entrySpliterator(){ return null; }
Spliterator<V> valueSpliterator(){ return null; }
abstract Collection<Map.Entry<K, V>> createEntries();
abstract Collection<V> createValues();
abstract Iterator<Map.Entry<K, V>> entryIterator();
abstract Map<K, Collection<V>> createAsMap();
abstract Multiset<K> createKeys();
abstract Set<K> createKeySet();
public Collection<Map.Entry<K, V>> entries(){ return null; }
public Collection<V> replaceValues(K p0, Iterable<? extends V> p1){ return null; }
public Collection<V> values(){ return null; }
public Map<K, Collection<V>> asMap(){ return null; }
public Multiset<K> keys(){ return null; }
public Set<K> keySet(){ return null; }
public String toString(){ return null; }
public boolean containsEntry(Object p0, Object p1){ return false; }
public boolean containsValue(Object p0){ return false; }
public boolean equals(Object p0){ return false; }
public boolean isEmpty(){ return false; }
public boolean put(K p0, V p1){ return false; }
public boolean putAll(K p0, Iterable<? extends V> p1){ return false; }
public boolean putAll(Multimap<? extends K, ? extends V> p0){ return false; }
public boolean remove(Object p0, Object p1){ return false; }
public int hashCode(){ return 0; }
}

View File

@@ -0,0 +1,10 @@
// Generated automatically from com.google.common.collect.BaseImmutableMultimap for testing purposes
package com.google.common.collect;
import com.google.common.collect.AbstractMultimap;
abstract class BaseImmutableMultimap<K, V> extends AbstractMultimap<K, V>
{
BaseImmutableMultimap(){}
}

View File

@@ -1,50 +1,48 @@
/*
* Copyright (C) 2008 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated automatically from com.google.common.collect.ImmutableCollection for testing purposes
package com.google.common.collect;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.UnmodifiableIterator;
import java.io.Serializable;
import java.util.AbstractCollection;
import java.util.Collection;
import java.util.Iterator;
import java.util.Spliterator;
import java.util.function.Predicate;
public abstract class ImmutableCollection<E> extends AbstractCollection<E> implements Serializable {
ImmutableCollection() {}
public ImmutableList<E> asList() {
return null;
}
public abstract static class Builder<E> {
Builder() {}
public abstract Builder<E> add(E element);
public Builder<E> add(E... elements) {
return null;
abstract public class ImmutableCollection<E> extends AbstractCollection<E> implements Serializable
{
ImmutableCollection(){}
Object writeReplace(){ return null; }
Object[] internalArray(){ return null; }
abstract boolean isPartialView();
abstract static public class Builder<E>
{
Builder(){}
public ImmutableCollection.Builder<E> add(E... p0){ return null; }
public ImmutableCollection.Builder<E> addAll(Iterable<? extends E> p0){ return null; }
public ImmutableCollection.Builder<E> addAll(Iterator<? extends E> p0){ return null; }
public abstract ImmutableCollection.Builder<E> add(E p0);
public abstract ImmutableCollection<E> build();
static int DEFAULT_INITIAL_CAPACITY = 0;
static int expandedCapacity(int p0, int p1){ return 0; }
}
public Builder<E> addAll(Iterable<? extends E> elements) {
return null;
}
public Builder<E> addAll(Iterator<? extends E> elements) {
return null;
}
public abstract ImmutableCollection<E> build();
}
int copyIntoArray(Object[] p0, int p1){ return 0; }
int internalArrayEnd(){ return 0; }
int internalArrayStart(){ return 0; }
public ImmutableList<E> asList(){ return null; }
public Spliterator<E> spliterator(){ return null; }
public abstract UnmodifiableIterator<E> iterator();
public abstract boolean contains(Object p0);
public final <T> T[] toArray(T[] p0){ return null; }
public final Object[] toArray(){ return null; }
public final boolean add(E p0){ return false; }
public final boolean addAll(Collection<? extends E> p0){ return false; }
public final boolean remove(Object p0){ return false; }
public final boolean removeAll(Collection<? extends Object> p0){ return false; }
public final boolean removeIf(Predicate<? super E> p0){ return false; }
public final boolean retainAll(Collection<? extends Object> p0){ return false; }
public final void clear(){}
static int SPLITERATOR_CHARACTERISTICS = 0;
}

View File

@@ -1,101 +1,79 @@
/*
* Copyright (C) 2007 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated automatically from com.google.common.collect.ImmutableList for testing purposes
package com.google.common.collect;
import java.util.Arrays;
import com.google.common.collect.ImmutableCollection;
import com.google.common.collect.UnmodifiableIterator;
import com.google.common.collect.UnmodifiableListIterator;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.RandomAccess;
import java.util.Spliterator;
import java.util.function.Consumer;
import java.util.function.UnaryOperator;
import java.util.stream.Collector;
public abstract class ImmutableList<E> extends ImmutableCollection<E>
implements List<E>{
public static <E> ImmutableList<E> of() {
return null;
}
public static <E> ImmutableList<E> of(E element) {
return null;
}
public static <E> ImmutableList<E> of(E e1, E e2) {
return null;
}
public static <E> ImmutableList<E> of(E e1, E e2, E e3) {
return null;
}
public static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4) {
return null;
}
public static <E> ImmutableList<E> of(
E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9, E e10, E e11, E e12, E... others) {
return null;
}
public static <E> ImmutableList<E> copyOf(Iterable<? extends E> elements) {
return null;
}
public static <E> ImmutableList<E> copyOf(Collection<? extends E> elements) {
return null;
}
public static <E> ImmutableList<E> copyOf(Iterator<? extends E> elements) {
return null;
}
public static <E> ImmutableList<E> copyOf(E[] elements) {
return null;
}
public static <E extends Comparable<? super E>> ImmutableList<E> sortedCopyOf(
Iterable<? extends E> elements) {
return null;
}
public static <E> ImmutableList<E> sortedCopyOf(
Comparator<? super E> comparator, Iterable<? extends E> elements) {
return null;
}
ImmutableList() {}
public ImmutableList<E> reverse() {
return null;
}
public static <E> Builder<E> builder() {
return null;
}
public static final class Builder<E> extends ImmutableCollection.Builder<E> {
@Override
public Builder<E> add(E element) {
return null;
abstract public class ImmutableList<E> extends ImmutableCollection<E> implements List<E>, RandomAccess
{
ImmutableList(){}
ImmutableList<E> subListUnchecked(int p0, int p1){ return null; }
Object writeReplace(){ return null; }
int copyIntoArray(Object[] p0, int p1){ return 0; }
public ImmutableList<E> reverse(){ return null; }
public ImmutableList<E> subList(int p0, int p1){ return null; }
public Spliterator<E> spliterator(){ return null; }
public UnmodifiableIterator<E> iterator(){ return null; }
public UnmodifiableListIterator<E> listIterator(){ return null; }
public UnmodifiableListIterator<E> listIterator(int p0){ return null; }
public boolean contains(Object p0){ return false; }
public boolean equals(Object p0){ return false; }
public final E remove(int p0){ return null; }
public final E set(int p0, E p1){ return null; }
public final ImmutableList<E> asList(){ return null; }
public final boolean addAll(int p0, Collection<? extends E> p1){ return false; }
public final void add(int p0, E p1){}
public final void replaceAll(UnaryOperator<E> p0){}
public final void sort(Comparator<? super E> p0){}
public int hashCode(){ return 0; }
public int indexOf(Object p0){ return 0; }
public int lastIndexOf(Object p0){ return 0; }
public static <E extends Comparable<? super E>> ImmutableList<E> sortedCopyOf(Iterable<? extends E> p0){ return null; }
public static <E> Collector<E, ? extends Object, ImmutableList<E>> toImmutableList(){ return null; }
public static <E> ImmutableList.Builder<E> builder(){ return null; }
public static <E> ImmutableList.Builder<E> builderWithExpectedSize(int p0){ return null; }
public static <E> ImmutableList<E> copyOf(Collection<? extends E> p0){ return null; }
public static <E> ImmutableList<E> copyOf(E[] p0){ return null; }
public static <E> ImmutableList<E> copyOf(Iterable<? extends E> p0){ return null; }
public static <E> ImmutableList<E> copyOf(Iterator<? extends E> p0){ return null; }
public static <E> ImmutableList<E> of(){ return null; }
public static <E> ImmutableList<E> of(E p0){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2, E p3){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2, E p3, E p4){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2, E p3, E p4, E p5){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2, E p3, E p4, E p5, E p6){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2, E p3, E p4, E p5, E p6, E p7){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2, E p3, E p4, E p5, E p6, E p7, E p8){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2, E p3, E p4, E p5, E p6, E p7, E p8, E p9){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2, E p3, E p4, E p5, E p6, E p7, E p8, E p9, E p10){ return null; }
public static <E> ImmutableList<E> of(E p0, E p1, E p2, E p3, E p4, E p5, E p6, E p7, E p8, E p9, E p10, E p11, E... p12){ return null; }
public static <E> ImmutableList<E> sortedCopyOf(Comparator<? super E> p0, Iterable<? extends E> p1){ return null; }
public void forEach(Consumer<? super E> p0){}
static <E> ImmutableList<E> asImmutableList(Object[] p0){ return null; }
static <E> ImmutableList<E> asImmutableList(Object[] p0, int p1){ return null; }
static public class Builder<E> extends ImmutableCollection.Builder<E>
{
Builder(int p0){}
ImmutableList.Builder<E> combine(ImmutableList.Builder<E> p0){ return null; }
Object[] contents = null;
public Builder(){}
public ImmutableList.Builder<E> add(E p0){ return null; }
public ImmutableList.Builder<E> add(E... p0){ return null; }
public ImmutableList.Builder<E> addAll(Iterable<? extends E> p0){ return null; }
public ImmutableList.Builder<E> addAll(Iterator<? extends E> p0){ return null; }
public ImmutableList<E> build(){ return null; }
}
@Override
public ImmutableList<E> build() {
return null;
}
}
}

View File

@@ -1,149 +1,87 @@
/*
* Copyright (C) 2008 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated automatically from com.google.common.collect.ImmutableMap for testing purposes
package com.google.common.collect;
import java.util.Collection;
import com.google.common.collect.ImmutableCollection;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.ImmutableSetMultimap;
import com.google.common.collect.UnmodifiableIterator;
import java.io.Serializable;
import java.util.Comparator;
import java.util.Map;
import java.util.Spliterator;
import java.util.function.BiFunction;
import java.util.function.BinaryOperator;
import java.util.function.Function;
import java.util.stream.Collector;
public abstract class ImmutableMap<K, V> implements Map<K, V> {
public static <K, V> ImmutableMap<K, V> of() {
return null;
}
public static <K, V> ImmutableMap<K, V> of(K k1, V v1) {
return null;
}
public static <K, V> ImmutableMap<K, V> of(K k1, V v1, K k2, V v2) {
return null;
}
public static <K, V> ImmutableMap<K, V> of(K k1, V v1, K k2, V v2, K k3, V v3) {
return null;
}
public static <K, V> ImmutableMap<K, V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4) {
return null;
}
public static <K, V> ImmutableMap<K, V> of(
K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5) {
return null;
}
public static <K, V> Builder<K, V> builder() {
return null;
}
public static <K, V> Builder<K, V> builderWithExpectedSize(int expectedSize) {
return null;
}
public static class Builder<K, V> {
public Builder() {
abstract public class ImmutableMap<K, V> implements Map<K, V>, Serializable
{
ImmutableMap(){}
Object writeReplace(){ return null; }
Spliterator<K> keySpliterator(){ return null; }
UnmodifiableIterator<K> keyIterator(){ return null; }
abstract ImmutableCollection<V> createValues();
abstract ImmutableSet<K> createKeySet();
abstract ImmutableSet<Map.Entry<K, V>> createEntrySet();
abstract boolean isPartialView();
boolean isHashCodeFast(){ return false; }
public ImmutableCollection<V> values(){ return null; }
public ImmutableSet<K> keySet(){ return null; }
public ImmutableSet<Map.Entry<K, V>> entrySet(){ return null; }
public ImmutableSetMultimap<K, V> asMultimap(){ return null; }
public String toString(){ return null; }
public abstract V get(Object p0);
public boolean containsKey(Object p0){ return false; }
public boolean containsValue(Object p0){ return false; }
public boolean equals(Object p0){ return false; }
public boolean isEmpty(){ return false; }
public final V compute(K p0, BiFunction<? super K, ? super V, ? extends V> p1){ return null; }
public final V computeIfAbsent(K p0, Function<? super K, ? extends V> p1){ return null; }
public final V computeIfPresent(K p0, BiFunction<? super K, ? super V, ? extends V> p1){ return null; }
public final V getOrDefault(Object p0, V p1){ return null; }
public final V merge(K p0, V p1, BiFunction<? super V, ? super V, ? extends V> p2){ return null; }
public final V put(K p0, V p1){ return null; }
public final V putIfAbsent(K p0, V p1){ return null; }
public final V remove(Object p0){ return null; }
public final V replace(K p0, V p1){ return null; }
public final boolean remove(Object p0, Object p1){ return false; }
public final boolean replace(K p0, V p1, V p2){ return false; }
public final void clear(){}
public final void putAll(Map<? extends K, ? extends V> p0){}
public final void replaceAll(BiFunction<? super K, ? super V, ? extends V> p0){}
public int hashCode(){ return 0; }
public static <K, V> ImmutableMap.Builder<K, V> builder(){ return null; }
public static <K, V> ImmutableMap.Builder<K, V> builderWithExpectedSize(int p0){ return null; }
public static <K, V> ImmutableMap<K, V> copyOf(Iterable<? extends Map.Entry<? extends K, ? extends V>> p0){ return null; }
public static <K, V> ImmutableMap<K, V> copyOf(Map<? extends K, ? extends V> p0){ return null; }
public static <K, V> ImmutableMap<K, V> of(){ return null; }
public static <K, V> ImmutableMap<K, V> of(K p0, V p1){ return null; }
public static <K, V> ImmutableMap<K, V> of(K p0, V p1, K p2, V p3){ return null; }
public static <K, V> ImmutableMap<K, V> of(K p0, V p1, K p2, V p3, K p4, V p5){ return null; }
public static <K, V> ImmutableMap<K, V> of(K p0, V p1, K p2, V p3, K p4, V p5, K p6, V p7){ return null; }
public static <K, V> ImmutableMap<K, V> of(K p0, V p1, K p2, V p3, K p4, V p5, K p6, V p7, K p8, V p9){ return null; }
public static <T, K, V> Collector<T, ? extends Object, ImmutableMap<K, V>> toImmutableMap(Function<? super T, ? extends K> p0, Function<? super T, ? extends V> p1){ return null; }
public static <T, K, V> Collector<T, ? extends Object, ImmutableMap<K, V>> toImmutableMap(Function<? super T, ? extends K> p0, Function<? super T, ? extends V> p1, BinaryOperator<V> p2){ return null; }
static <K, V> Map.Entry<K, V> entryOf(K p0, V p1){ return null; }
static IllegalArgumentException conflictException(String p0, Object p1, Object p2){ return null; }
static Map.Entry<? extends Object, ? extends Object>[] EMPTY_ENTRY_ARRAY = null;
static public class Builder<K, V>
{
Builder(int p0){}
Comparator<? super V> valueComparator = null;
ImmutableMap.Builder<K, V> combine(ImmutableMap.Builder<K, V> p0){ return null; }
ImmutableMap<K, V> buildJdkBacked(){ return null; }
Map.Entry<K, V>[] entries = null;
boolean entriesUsed = false;
int size = 0;
public Builder(){}
public ImmutableMap.Builder<K, V> orderEntriesByValue(Comparator<? super V> p0){ return null; }
public ImmutableMap.Builder<K, V> put(K p0, V p1){ return null; }
public ImmutableMap.Builder<K, V> put(Map.Entry<? extends K, ? extends V> p0){ return null; }
public ImmutableMap.Builder<K, V> putAll(Iterable<? extends Map.Entry<? extends K, ? extends V>> p0){ return null; }
public ImmutableMap.Builder<K, V> putAll(Map<? extends K, ? extends V> p0){ return null; }
public ImmutableMap<K, V> build(){ return null; }
}
public Builder<K, V> put(K key, V value) {
return null;
}
public Builder<K, V> put(Entry<? extends K, ? extends V> entry) {
return null;
}
public Builder<K, V> putAll(Map<? extends K, ? extends V> map) {
return null;
}
public Builder<K, V> putAll(Iterable<? extends Entry<? extends K, ? extends V>> entries) {
return null;
}
public Builder<K, V> orderEntriesByValue(Comparator<? super V> valueComparator) {
return null;
}
public ImmutableMap<K, V> build() {
return null;
}
}
public static <K, V> ImmutableMap<K, V> copyOf(Map<? extends K, ? extends V> map) {
return null;
}
public static <K, V> ImmutableMap<K, V> copyOf(
Iterable<? extends Entry<? extends K, ? extends V>> entries) {
return null;
}
@Override
public final V put(K k, V v) {
return null;
}
@Override
public final void putAll(Map<? extends K, ? extends V> map) {
}
@Override
public final V remove(Object o) {
return null;
}
@Override
public final void clear() {
}
@Override
public boolean isEmpty() {
return false;
}
@Override
public boolean containsKey(Object key) {
return false;
}
@Override
public boolean containsValue(Object value) {
return false;
}
@Override
public abstract V get(Object key);
@Override
public ImmutableSet<Entry<K, V>> entrySet() {
return null;
}
@Override
public ImmutableSet<K> keySet() {
return null;
}
@Override
public ImmutableCollection<V> values() {
return null;
}
// public ImmutableSetMultimap<K, V> asMultimap() {
// return null;
// }
static void checkNoConflict(boolean p0, String p1, Map.Entry<? extends Object, ? extends Object> p2, Map.Entry<? extends Object, ? extends Object> p3){}
}

View File

@@ -1,128 +1,80 @@
/*
* Copyright (C) 2008 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated automatically from com.google.common.collect.ImmutableMultimap for testing purposes
package com.google.common.collect;
import com.google.common.collect.BaseImmutableMultimap;
import com.google.common.collect.ImmutableCollection;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableMultiset;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Multimap;
import com.google.common.collect.UnmodifiableIterator;
import java.io.Serializable;
import java.util.Collection;
import java.util.Comparator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.Spliterator;
import java.util.function.BiConsumer;
public abstract class ImmutableMultimap<K, V> extends AbstractMultimap<K, V> {
public static <K, V> ImmutableMultimap<K, V> of() {
return null;
}
public static <K, V> ImmutableMultimap<K, V> of(K k1, V v1) {
return null;
}
public static <K, V> ImmutableMultimap<K, V> of(K k1, V v1, K k2, V v2) {
return null;
}
public static <K, V> ImmutableMultimap<K, V> of(K k1, V v1, K k2, V v2, K k3, V v3) {
return null;
}
public static <K, V> ImmutableMultimap<K, V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4) {
return null;
}
public static <K, V> ImmutableMultimap<K, V> of(
K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5) {
return null;
}
public static <K, V> Builder<K, V> builder() {
return null;
}
public static class Builder<K, V> {
public Builder() {
abstract public class ImmutableMultimap<K, V> extends BaseImmutableMultimap<K, V> implements Serializable
{
protected ImmutableMultimap() {}
ImmutableCollection<Map.Entry<K, V>> createEntries(){ return null; }
ImmutableCollection<V> createValues(){ return null; }
ImmutableMultimap(ImmutableMap<K, ? extends ImmutableCollection<V>> p0, int p1){}
ImmutableMultiset<K> createKeys(){ return null; }
Map<K, Collection<V>> createAsMap(){ return null; }
Set<K> createKeySet(){ return null; }
Spliterator<Map.Entry<K, V>> entrySpliterator(){ return null; }
UnmodifiableIterator<Map.Entry<K, V>> entryIterator(){ return null; }
UnmodifiableIterator<V> valueIterator(){ return null; }
boolean isPartialView(){ return false; }
final ImmutableMap<K, ? extends ImmutableCollection<V>> map = null;
final int size = 0;
public ImmutableCollection<Map.Entry<K, V>> entries(){ return null; }
public ImmutableCollection<V> removeAll(Object p0){ return null; }
public ImmutableCollection<V> replaceValues(K p0, Iterable<? extends V> p1){ return null; }
public ImmutableCollection<V> values(){ return null; }
public ImmutableMap<K, Collection<V>> asMap(){ return null; }
public ImmutableMultiset<K> keys(){ return null; }
public ImmutableSet<K> keySet(){ return null; }
public abstract ImmutableCollection<V> get(K p0);
public abstract ImmutableMultimap<V, K> inverse();
public boolean containsKey(Object p0){ return false; }
public boolean containsValue(Object p0){ return false; }
public boolean put(K p0, V p1){ return false; }
public boolean putAll(K p0, Iterable<? extends V> p1){ return false; }
public boolean putAll(Multimap<? extends K, ? extends V> p0){ return false; }
public boolean remove(Object p0, Object p1){ return false; }
public int size(){ return 0; }
public static <K, V> ImmutableMultimap.Builder<K, V> builder(){ return null; }
public static <K, V> ImmutableMultimap<K, V> copyOf(Iterable<? extends Map.Entry<? extends K, ? extends V>> p0){ return null; }
public static <K, V> ImmutableMultimap<K, V> copyOf(Multimap<? extends K, ? extends V> p0){ return null; }
public static <K, V> ImmutableMultimap<K, V> of(){ return null; }
public static <K, V> ImmutableMultimap<K, V> of(K p0, V p1){ return null; }
public static <K, V> ImmutableMultimap<K, V> of(K p0, V p1, K p2, V p3){ return null; }
public static <K, V> ImmutableMultimap<K, V> of(K p0, V p1, K p2, V p3, K p4, V p5){ return null; }
public static <K, V> ImmutableMultimap<K, V> of(K p0, V p1, K p2, V p3, K p4, V p5, K p6, V p7){ return null; }
public static <K, V> ImmutableMultimap<K, V> of(K p0, V p1, K p2, V p3, K p4, V p5, K p6, V p7, K p8, V p9){ return null; }
public void clear(){}
public void forEach(BiConsumer<? super K, ? super V> p0){}
static public class Builder<K, V>
{
Collection<V> newMutableValueCollection(){ return null; }
Comparator<? super K> keyComparator = null;
Comparator<? super V> valueComparator = null;
ImmutableMultimap.Builder<K, V> combine(ImmutableMultimap.Builder<K, V> p0){ return null; }
Map<K, Collection<V>> builderMap = null;
public Builder(){}
public ImmutableMultimap.Builder<K, V> orderKeysBy(Comparator<? super K> p0){ return null; }
public ImmutableMultimap.Builder<K, V> orderValuesBy(Comparator<? super V> p0){ return null; }
public ImmutableMultimap.Builder<K, V> put(K p0, V p1){ return null; }
public ImmutableMultimap.Builder<K, V> put(Map.Entry<? extends K, ? extends V> p0){ return null; }
public ImmutableMultimap.Builder<K, V> putAll(Iterable<? extends Map.Entry<? extends K, ? extends V>> p0){ return null; }
public ImmutableMultimap.Builder<K, V> putAll(K p0, Iterable<? extends V> p1){ return null; }
public ImmutableMultimap.Builder<K, V> putAll(K p0, V... p1){ return null; }
public ImmutableMultimap.Builder<K, V> putAll(Multimap<? extends K, ? extends V> p0){ return null; }
public ImmutableMultimap<K, V> build(){ return null; }
}
public Builder<K, V> put(K key, V value) {
return null;
}
public Builder<K, V> put(Entry<? extends K, ? extends V> entry) {
return null;
}
public Builder<K, V> putAll(Iterable<? extends Entry<? extends K, ? extends V>> entries) {
return null;
}
public Builder<K, V> putAll(K key, Iterable<? extends V> values) {
return null;
}
public Builder<K, V> putAll(K key, V... values) {
return null;
}
public Builder<K, V> putAll(Multimap<? extends K, ? extends V> multimap) {
return null;
}
public Builder<K, V> orderKeysBy(Comparator<? super K> keyComparator) {
return null;
}
public Builder<K, V> orderValuesBy(Comparator<? super V> valueComparator) {
return null;
}
public ImmutableMultimap<K, V> build() {
return null;
}
}
public static <K, V> ImmutableMultimap<K, V> copyOf(Multimap<? extends K, ? extends V> multimap) {
return null;
}
public static <K, V> ImmutableMultimap<K, V> copyOf(
Iterable<? extends Entry<? extends K, ? extends V>> entries) {
return null;
}
@Override
public ImmutableCollection<V> removeAll(Object key) {
return null;
}
@Override
public void clear() {
}
@Override
public abstract ImmutableCollection<V> get(K key);
public abstract ImmutableMultimap<V, K> inverse();
@Override
public boolean containsKey(Object key) {
return false;
}
@Override
public int size() {
return 0;
}
}

View File

@@ -1,125 +1,63 @@
/*
* Copyright (C) 2008 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated automatically from com.google.common.collect.ImmutableMultiset for testing purposes
package com.google.common.collect;
import com.google.common.collect.ImmutableCollection;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMultisetGwtSerializationDependencies;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Multiset;
import com.google.common.collect.UnmodifiableIterator;
import java.util.Collection;
import java.util.Iterator;
import java.util.function.Function;
import java.util.function.ToIntFunction;
import java.util.stream.Collector;
public abstract class ImmutableMultiset<E> extends ImmutableCollection<E>
implements Multiset<E> {
public static <E> ImmutableMultiset<E> of() {
return null;
}
public static <E> ImmutableMultiset<E> of(E element) {
return null;
}
public static <E> ImmutableMultiset<E> of(E e1, E e2) {
return null;
}
public static <E> ImmutableMultiset<E> of(E e1, E e2, E e3) {
return null;
}
public static <E> ImmutableMultiset<E> of(E e1, E e2, E e3, E e4) {
return null;
}
public static <E> ImmutableMultiset<E> of(E e1, E e2, E e3, E e4, E e5) {
return null;
}
public static <E> ImmutableMultiset<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E... others) {
return null;
}
public static <E> ImmutableMultiset<E> copyOf(E[] elements) {
return null;
}
public static <E> ImmutableMultiset<E> copyOf(Iterable<? extends E> elements) {
return null;
}
public static <E> ImmutableMultiset<E> copyOf(Iterator<? extends E> elements) {
return null;
}
@Override
public boolean contains(Object object) {
return false;
}
@Override
public final int add(E element, int occurrences) {
return 0;
}
@Override
public final int remove(Object element, int occurrences) {
return 0;
}
@Override
public final int setCount(E element, int count) {
return 0;
}
@Override
public final boolean setCount(E element, int oldCount, int newCount) {
return false;
}
@Override
public abstract ImmutableSet<E> elementSet();
@Override
public ImmutableSet<Entry<E>> entrySet() {
return null;
}
public static <E> Builder<E> builder() {
return null;
}
public static class Builder<E> extends ImmutableCollection.Builder<E> {
public Builder() {
abstract public class ImmutableMultiset<E> extends ImmutableMultisetGwtSerializationDependencies<E> implements Multiset<E>
{
ImmutableMultiset(){}
Object writeReplace(){ return null; }
abstract Multiset.Entry<E> getEntry(int p0);
int copyIntoArray(Object[] p0, int p1){ return 0; }
public ImmutableList<E> asList(){ return null; }
public ImmutableSet<Multiset.Entry<E>> entrySet(){ return null; }
public String toString(){ return null; }
public UnmodifiableIterator<E> iterator(){ return null; }
public abstract ImmutableSet<E> elementSet();
public boolean contains(Object p0){ return false; }
public boolean equals(Object p0){ return false; }
public final boolean setCount(E p0, int p1, int p2){ return false; }
public final int add(E p0, int p1){ return 0; }
public final int remove(Object p0, int p1){ return 0; }
public final int setCount(E p0, int p1){ return 0; }
public int hashCode(){ return 0; }
public static <E> Collector<E, ? extends Object, ImmutableMultiset<E>> toImmutableMultiset(){ return null; }
public static <E> ImmutableMultiset.Builder<E> builder(){ return null; }
public static <E> ImmutableMultiset<E> copyOf(E[] p0){ return null; }
public static <E> ImmutableMultiset<E> copyOf(Iterable<? extends E> p0){ return null; }
public static <E> ImmutableMultiset<E> copyOf(Iterator<? extends E> p0){ return null; }
public static <E> ImmutableMultiset<E> of(){ return null; }
public static <E> ImmutableMultiset<E> of(E p0){ return null; }
public static <E> ImmutableMultiset<E> of(E p0, E p1){ return null; }
public static <E> ImmutableMultiset<E> of(E p0, E p1, E p2){ return null; }
public static <E> ImmutableMultiset<E> of(E p0, E p1, E p2, E p3){ return null; }
public static <E> ImmutableMultiset<E> of(E p0, E p1, E p2, E p3, E p4){ return null; }
public static <E> ImmutableMultiset<E> of(E p0, E p1, E p2, E p3, E p4, E p5, E... p6){ return null; }
public static <T, E> Collector<T, ? extends Object, ImmutableMultiset<E>> toImmutableMultiset(Function<? super T, ? extends E> p0, ToIntFunction<? super T> p1){ return null; }
static <E> ImmutableMultiset<E> copyFromEntries(Collection<? extends Multiset.Entry<? extends E>> p0){ return null; }
static public class Builder<E> extends ImmutableCollection.Builder<E>
{
Builder(Multiset<E> p0){}
ImmutableMultiset<E> buildJdkBacked(){ return null; }
final Multiset<E> contents = null;
public Builder(){}
public ImmutableMultiset.Builder<E> add(E p0){ return null; }
public ImmutableMultiset.Builder<E> add(E... p0){ return null; }
public ImmutableMultiset.Builder<E> addAll(Iterable<? extends E> p0){ return null; }
public ImmutableMultiset.Builder<E> addAll(Iterator<? extends E> p0){ return null; }
public ImmutableMultiset.Builder<E> addCopies(E p0, int p1){ return null; }
public ImmutableMultiset.Builder<E> setCount(E p0, int p1){ return null; }
public ImmutableMultiset<E> build(){ return null; }
}
@Override
public Builder<E> add(E element) {
return null;
}
public Builder<E> addCopies(E element, int occurrences) {
return null;
}
public Builder<E> setCount(E element, int count) {
return null;
}
@Override
public ImmutableMultiset<E> build() {
return null;
}
}
}

View File

@@ -0,0 +1,10 @@
// Generated automatically from com.google.common.collect.ImmutableMultisetGwtSerializationDependencies for testing purposes
package com.google.common.collect;
import com.google.common.collect.ImmutableCollection;
abstract class ImmutableMultisetGwtSerializationDependencies<E> extends ImmutableCollection<E>
{
ImmutableMultisetGwtSerializationDependencies(){}
}

View File

@@ -1,86 +1,60 @@
/*
* Copyright (C) 2007 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated automatically from com.google.common.collect.ImmutableSet for testing purposes
package com.google.common.collect;
import com.google.common.collect.ImmutableCollection;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.UnmodifiableIterator;
import java.util.Collection;
import java.util.Iterator;
import java.util.Set;
import java.util.stream.Collector;
public abstract class ImmutableSet<E> extends ImmutableCollection<E> implements Set<E> {
public static <E> ImmutableSet<E> of() {
return null;
}
public static <E> ImmutableSet<E> of(E element) {
return null;
}
public static <E> ImmutableSet<E> of(E e1, E e2) {
return null;
}
public static <E> ImmutableSet<E> of(E e1, E e2, E e3) {
return null;
}
public static <E> ImmutableSet<E> of(E e1, E e2, E e3, E e4) {
return null;
}
public static <E> ImmutableSet<E> of(E e1, E e2, E e3, E e4, E e5) {
return null;
}
public static <E> ImmutableSet<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E... others) {
return null;
}
public static <E> ImmutableSet<E> copyOf(Collection<? extends E> elements) {
return null;
}
public static <E> ImmutableSet<E> copyOf(Iterable<? extends E> elements) {
return null;
}
public static <E> ImmutableSet<E> copyOf(Iterator<? extends E> elements) {
return null;
}
public static <E> ImmutableSet<E> copyOf(E[] elements) {
return null;
}
ImmutableSet() {}
public static <E> Builder<E> builder() {
return null;
}
public static class Builder<E> extends ImmutableCollection.Builder<E> {
public Builder() {
abstract public class ImmutableSet<E> extends ImmutableCollection<E> implements Set<E>
{
ImmutableList<E> createAsList(){ return null; }
ImmutableSet(){}
Object writeReplace(){ return null; }
boolean isHashCodeFast(){ return false; }
public ImmutableList<E> asList(){ return null; }
public abstract UnmodifiableIterator<E> iterator();
public boolean equals(Object p0){ return false; }
public int hashCode(){ return 0; }
public static <E> Collector<E, ? extends Object, ImmutableSet<E>> toImmutableSet(){ return null; }
public static <E> ImmutableSet.Builder<E> builder(){ return null; }
public static <E> ImmutableSet.Builder<E> builderWithExpectedSize(int p0){ return null; }
public static <E> ImmutableSet<E> copyOf(Collection<? extends E> p0){ return null; }
public static <E> ImmutableSet<E> copyOf(E[] p0){ return null; }
public static <E> ImmutableSet<E> copyOf(Iterable<? extends E> p0){ return null; }
public static <E> ImmutableSet<E> copyOf(Iterator<? extends E> p0){ return null; }
public static <E> ImmutableSet<E> of(){ return null; }
public static <E> ImmutableSet<E> of(E p0){ return null; }
public static <E> ImmutableSet<E> of(E p0, E p1){ return null; }
public static <E> ImmutableSet<E> of(E p0, E p1, E p2){ return null; }
public static <E> ImmutableSet<E> of(E p0, E p1, E p2, E p3){ return null; }
public static <E> ImmutableSet<E> of(E p0, E p1, E p2, E p3, E p4){ return null; }
public static <E> ImmutableSet<E> of(E p0, E p1, E p2, E p3, E p4, E p5, E... p6){ return null; }
static Object[] rebuildHashTable(int p0, Object[] p1, int p2){ return null; }
static boolean hashFloodingDetected(Object[] p0){ return false; }
static double HASH_FLOODING_FPP = 0;
static int MAX_RUN_MULTIPLIER = 0;
static int MAX_TABLE_SIZE = 0;
static int SPLITERATOR_CHARACTERISTICS = 0;
static int chooseTableSize(int p0){ return 0; }
static public class Builder<E> extends ImmutableCollection.Builder<E>
{
Builder(boolean p0){}
Builder(int p0){}
ImmutableSet.Builder<E> combine(ImmutableSet.Builder<E> p0){ return null; }
boolean forceCopy = false;
final void copyIfNecessary(){}
public Builder(){}
public ImmutableSet.Builder<E> add(E p0){ return null; }
public ImmutableSet.Builder<E> add(E... p0){ return null; }
public ImmutableSet.Builder<E> addAll(Iterable<? extends E> p0){ return null; }
public ImmutableSet.Builder<E> addAll(Iterator<? extends E> p0){ return null; }
public ImmutableSet<E> build(){ return null; }
void copy(){}
void forceJdk(){}
}
public Builder<E> add(E element) {
return null;
}
public ImmutableSet<E> build() {
return null;
}
}
}

View File

@@ -0,0 +1,54 @@
// Generated automatically from com.google.common.collect.ImmutableSetMultimap for testing purposes
package com.google.common.collect;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableMultimap;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Multimap;
import com.google.common.collect.SetMultimap;
import java.util.Collection;
import java.util.Comparator;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collector;
import java.util.stream.Stream;
public class ImmutableSetMultimap<K, V> extends ImmutableMultimap<K, V> implements SetMultimap<K, V>
{
protected ImmutableSetMultimap() {}
Comparator<? super V> valueComparator(){ return null; }
ImmutableSetMultimap(ImmutableMap<K, ImmutableSet<V>> p0, int p1, Comparator<? super V> p2){}
public ImmutableSet<Map.Entry<K, V>> entries(){ return null; }
public ImmutableSet<V> get(K p0){ return null; }
public ImmutableSetMultimap<V, K> inverse(){ return null; }
public final ImmutableSet<V> removeAll(Object p0){ return null; }
public final ImmutableSet<V> replaceValues(K p0, Iterable<? extends V> p1){ return null; }
public static <K, V> ImmutableSetMultimap.Builder<K, V> builder(){ return null; }
public static <K, V> ImmutableSetMultimap<K, V> copyOf(Iterable<? extends Map.Entry<? extends K, ? extends V>> p0){ return null; }
public static <K, V> ImmutableSetMultimap<K, V> copyOf(Multimap<? extends K, ? extends V> p0){ return null; }
public static <K, V> ImmutableSetMultimap<K, V> of(){ return null; }
public static <K, V> ImmutableSetMultimap<K, V> of(K p0, V p1){ return null; }
public static <K, V> ImmutableSetMultimap<K, V> of(K p0, V p1, K p2, V p3){ return null; }
public static <K, V> ImmutableSetMultimap<K, V> of(K p0, V p1, K p2, V p3, K p4, V p5){ return null; }
public static <K, V> ImmutableSetMultimap<K, V> of(K p0, V p1, K p2, V p3, K p4, V p5, K p6, V p7){ return null; }
public static <K, V> ImmutableSetMultimap<K, V> of(K p0, V p1, K p2, V p3, K p4, V p5, K p6, V p7, K p8, V p9){ return null; }
public static <T, K, V> Collector<T, ? extends Object, ImmutableSetMultimap<K, V>> flatteningToImmutableSetMultimap(Function<? super T, ? extends K> p0, Function<? super T, ? extends Stream<? extends V>> p1){ return null; }
public static <T, K, V> Collector<T, ? extends Object, ImmutableSetMultimap<K, V>> toImmutableSetMultimap(Function<? super T, ? extends K> p0, Function<? super T, ? extends V> p1){ return null; }
static <K, V> ImmutableSetMultimap<K, V> fromMapEntries(Collection<? extends Map.Entry<? extends K, ? extends Collection<? extends V>>> p0, Comparator<? super V> p1){ return null; }
static public class Builder<K, V> extends ImmutableMultimap.Builder<K, V>
{
Collection<V> newMutableValueCollection(){ return null; }
ImmutableSetMultimap.Builder<K, V> combine(ImmutableMultimap.Builder<K, V> p0){ return null; }
public Builder(){}
public ImmutableSetMultimap.Builder<K, V> orderKeysBy(Comparator<? super K> p0){ return null; }
public ImmutableSetMultimap.Builder<K, V> orderValuesBy(Comparator<? super V> p0){ return null; }
public ImmutableSetMultimap.Builder<K, V> put(K p0, V p1){ return null; }
public ImmutableSetMultimap.Builder<K, V> put(Map.Entry<? extends K, ? extends V> p0){ return null; }
public ImmutableSetMultimap.Builder<K, V> putAll(Iterable<? extends Map.Entry<? extends K, ? extends V>> p0){ return null; }
public ImmutableSetMultimap.Builder<K, V> putAll(K p0, Iterable<? extends V> p1){ return null; }
public ImmutableSetMultimap.Builder<K, V> putAll(K p0, V... p1){ return null; }
public ImmutableSetMultimap.Builder<K, V> putAll(Multimap<? extends K, ? extends V> p0){ return null; }
public ImmutableSetMultimap<K, V> build(){ return null; }
}
}

View File

@@ -1,65 +1,34 @@
/*
* Copyright (C) 2007 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated automatically from com.google.common.collect.Multimap for testing purposes
package com.google.common.collect;
import com.google.common.collect.Multiset;
import java.util.Collection;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.function.BiConsumer;
public interface Multimap<K, V> {
int size();
boolean isEmpty();
boolean containsKey(Object key);
boolean containsValue(Object value);
boolean containsEntry(Object key, Object value);
boolean put(K key, V value);
boolean remove(Object key, Object value);
boolean putAll(K key, Iterable<? extends V> values);
boolean putAll(Multimap<? extends K, ? extends V> multimap);
Collection<V> replaceValues(K key, Iterable<? extends V> values);
Collection<V> removeAll(Object key);
void clear();
Collection<V> get(K key);
Set<K> keySet();
Multiset<K> keys();
Collection<V> values();
Collection<Entry<K, V>> entries();
default void forEach(BiConsumer<? super K, ? super V> action) {
}
Map<K, Collection<V>> asMap();
public interface Multimap<K, V>
{
Collection<Map.Entry<K, V>> entries();
Collection<V> get(K p0);
Collection<V> removeAll(Object p0);
Collection<V> replaceValues(K p0, Iterable<? extends V> p1);
Collection<V> values();
Map<K, Collection<V>> asMap();
Multiset<K> keys();
Set<K> keySet();
boolean containsEntry(Object p0, Object p1);
boolean containsKey(Object p0);
boolean containsValue(Object p0);
boolean equals(Object p0);
boolean isEmpty();
boolean put(K p0, V p1);
boolean putAll(K p0, Iterable<? extends V> p1);
boolean putAll(Multimap<? extends K, ? extends V> p0);
boolean remove(Object p0, Object p1);
default void forEach(BiConsumer<? super K, ? super V> p0){}
int hashCode();
int size();
void clear();
}

View File

@@ -1,49 +1,43 @@
/*
* Copyright (C) 2007 The Guava Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated automatically from com.google.common.collect.Multiset for testing purposes
package com.google.common.collect;
import java.util.Collection;
import java.util.Iterator;
import java.util.Set;
import java.util.Spliterator;
import java.util.function.Consumer;
import java.util.function.ObjIntConsumer;
public interface Multiset<E> extends Collection<E> {
int count(Object element);
int add(E element, int occurrences);
int remove(Object element, int occurrences);
int setCount(E element, int count);
boolean setCount(E element, int oldCount, int newCount);
Set<E> elementSet();
Set<Entry<E>> entrySet();
default void forEachEntry(ObjIntConsumer<? super E> action) {
}
boolean equals(Object object);
interface Entry<E> {
E getElement();
int getCount();
}
public interface Multiset<E> extends Collection<E>
{
Iterator<E> iterator();
Set<E> elementSet();
Set<Multiset.Entry<E>> entrySet();
String toString();
boolean add(E p0);
boolean contains(Object p0);
boolean containsAll(Collection<? extends Object> p0);
boolean equals(Object p0);
boolean remove(Object p0);
boolean removeAll(Collection<? extends Object> p0);
boolean retainAll(Collection<? extends Object> p0);
boolean setCount(E p0, int p1, int p2);
default Spliterator<E> spliterator(){ return null; }
default void forEach(Consumer<? super E> p0){}
default void forEachEntry(ObjIntConsumer<? super E> p0){}
int add(E p0, int p1);
int count(Object p0);
int hashCode();
int remove(Object p0, int p1);
int setCount(E p0, int p1);
int size();
static public interface Entry<E>
{
E getElement();
String toString();
boolean equals(Object p0);
int getCount();
int hashCode();
}
}

View File

@@ -0,0 +1,18 @@
// Generated automatically from com.google.common.collect.SetMultimap for testing purposes
package com.google.common.collect;
import com.google.common.collect.Multimap;
import java.util.Collection;
import java.util.Map;
import java.util.Set;
public interface SetMultimap<K, V> extends Multimap<K, V>
{
Map<K, Collection<V>> asMap();
Set<Map.Entry<K, V>> entries();
Set<V> get(K p0);
Set<V> removeAll(Object p0);
Set<V> replaceValues(K p0, Iterable<? extends V> p1);
boolean equals(Object p0);
}

View File

@@ -0,0 +1,11 @@
// Generated automatically from com.google.common.collect.UnmodifiableIterator for testing purposes
package com.google.common.collect;
import java.util.Iterator;
abstract public class UnmodifiableIterator<E> implements Iterator<E>
{
protected UnmodifiableIterator(){}
public final void remove(){}
}

View File

@@ -0,0 +1,13 @@
// Generated automatically from com.google.common.collect.UnmodifiableListIterator for testing purposes
package com.google.common.collect;
import com.google.common.collect.UnmodifiableIterator;
import java.util.ListIterator;
abstract public class UnmodifiableListIterator<E> extends UnmodifiableIterator<E> implements ListIterator<E>
{
protected UnmodifiableListIterator(){}
public final void add(E p0){}
public final void set(E p0){}
}