Package generic

# Interface Span.MutableSpanMap<N,S extends Span<N,S>,V>

Type Parameters:
  `N` - the type of endpoints
  `S` - the type of spans
  `V` - the type of values

All Superinterfaces:
  `Span.SpanMap<N,S,V>`

All Known Subinterfaces:
  `ULongSpan.MutableULongSpanMap<V>`

All Known Implementing Classes:
  `Span.DefaultSpanMap`, `ULongSpan.DefaultULongSpanMap`

Enclosing interface:
  Span<N,S extends Span<N,S>>

public static interface Span.MutableSpanMap<N,S extends Span<N,S>,V> extends Span.SpanMap<N,S,V>
An abstract interface for a mutable `Span.SpanMap`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `clear()`
  Remove all entries from the map
  `void`
  `put(S s, V v)`
  Put an entry, mapping all keys contains in the span to the given value
  `void`
  `putAll(Span.SpanMap<N,S,V> map)`
  Copy all entries from the given map into this one
  `void`
  `remove(S s)`
  Delete all keys in the given span

  ### Methods inherited from interface generic.Span.SpanMap

  `bound, entries, get, getEntry, intersectingEntries, intersectingSpans, intersects, isEmpty, spans, values`

- ## Method Details

  - ### put

    void put(S s, V v)
    Put an entry, mapping all keys contains in the span to the given value

    Each key can only be mapped to a single value. Thus existing entries having the same value may be coalesced to this new entry. Existing entries having a different value will be truncated or deleted to make room for this entry.

    Parameters:
      `s` - the span
      `v` - the value

  - ### putAll

    void putAll(Span.SpanMap<N,S,V> map)
    Copy all entries from the given map into this one

    The entries from both maps may be coalesced when entered into this one. (The given map remains unmodified.) The entries in this map may be truncated or deleted to make room for those in the given map.

    Parameters:
      `map` - the other map

  - ### remove

    void remove(S s)
    Delete all keys in the given span

    Entries which intersect the given span are truncated. Entries which are enclosed are deleted, such that every key in the given span is no longer mapped to a value.

    Parameters:
      `s` - the span

  - ### clear

    void clear()
    Remove all entries from the map