All Downloads are FREE. Search and download functionalities are using the official Maven repository.

xapi.collect.api.HasValues Maven / Gradle / Ivy

Go to download

Everything needed to run a comprehensive dev environment. Just type X_ and pick a service from autocomplete; new dev modules will be added as they are built. The only dev service not included in the uber jar is xapi-dev-maven, as it includes all runtime dependencies of maven, adding ~4 seconds to build time, and 6 megabytes to the final output jar size (without xapi-dev-maven, it's ~1MB).

The newest version!
package xapi.collect.api;

import java.util.Map.Entry;

import xapi.collect.impl.EntryIterable;


public interface HasValues extends EntryIterable {

  // We don't implement typed getters / setters or removers,
  // Because some implementers of this interface are javascript objects,
  // and the interface's erased typed signature MUST match the final method's type.
  // Setting K to String will result in a Ljava/lang/Object; in the interface,
  // and Ljava/lang/String; in the implemented method.


  boolean isEmpty();

  void clear();

  // We can safely erase all the way to java/lang/Object;
  boolean containsKey(Object key);

  boolean containsValue(Object key);

  // We can also safely use generics as they will be erased
  void putAll(Iterable> items);

  void removeAll(Iterable items);

  Iterable keys();

  Iterable values();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy