Interface StringMap<S extends CharSequence>

All Superinterfaces:
Function<CharSequence,​Long>, Function<CharSequence,​Long>, Object2LongFunction<CharSequence>, Serializable, Size64, ToLongFunction<CharSequence>
All Known Subinterfaces:
All Known Implementing Classes:
AbstractPrefixMap, ImmutableExternalPrefixMap, LiterallySignedStringMap, LongBigListSignedStringMap, ShiftAddXorSignedStringMap, StringMaps.PrefixMapWrapper, StringMaps.StringMapWrapper, StringMaps.SynchronizedPrefixMap, StringMaps.SynchronizedStringMap, TernaryIntervalSearchTree

public interface StringMap<S extends CharSequence>
extends Object2LongFunction<CharSequence>, Size64, Serializable
A map from strings to longs (and possibly vice versa).

String maps represent mappings from strings (actually, any subclass of CharSequence) to numbers; they can support reverse mapping, too. The latter has usually sense only if the map is minimal and perfect (e.g., a bijection of a set of string with an initial segment of the natural numbers of the same size). String maps are useful for terms of an MG4J inverted index, URLs of a WebGraph-compressed web snapshot, and so on.

Sebastiano Vigna
  • Field Details

  • Method Details

    • list

      ObjectBigList<? extends S> list()
      Returns a list view of the domain of this string map (optional operation).

      Note that the list view acts as an inverse of the mapping implemented by this map.

      a list view of the domain of this string map, or null if this map does not support this operation.
    • size64

      default long size64()
      Returns the intended number of keys in this function, or -1 if no such number exists.

      Most function implementations will have some knowledge of the intended number of keys in their domain. In some cases, however, this might not be possible. This default implementation, in particular, returns -1.

      Specified by:
      size64 in interface Size64
      the intended number of keys in this function, or -1 if that number is not available.
    • size

      @Deprecated default int size()
      Please use size64() instead.
      Specified by:
      size in interface Function<CharSequence,​Long>
      Specified by:
      size in interface Size64