Class Synced<X,​Y>

  • Type Parameters:
    X - Type of key
    Y - Type of value
    All Implemented Interfaces:
    Map<X,​Y>

    public final class Synced<X,​Y>
    extends MapEnvelope<X,​Y>
    Map decorator that goes through the map only once.

    The map is read-only.

    Objects of this class are thread-safe.

    Since:
    0.24
    • Constructor Detail

      • Synced

        @SafeVarargs
        public Synced​(Map<X,​Y> map,
                      Map.Entry<X,​Y>... list)
        Ctor.
        Parameters:
        map - The map to extend
        list - List of entries
      • Synced

        public Synced​(Func<? super Z,​? extends X> key,
                      Func<? super Z,​? extends Y> value,
                      Map<? extends X,​? extends Y> map,
                      Iterable<? extends Z> list)
        Ctor.
        Type Parameters:
        Z - Type of items in the list
        Parameters:
        key - Func to create key
        value - Func to create value
        map - The map to extend
        list - List of items
      • Synced

        public Synced​(Iterable<? extends Z> list,
                      Func<? super Z,​? extends X> key,
                      Func<? super Z,​? extends Y> value)
        Ctor.
        Type Parameters:
        Z - Type of items in the list
        Parameters:
        list - List of items
        key - Func to create key
        value - Func to create value
      • Synced

        @SafeVarargs
        public Synced​(Func<? super Z,​Map.Entry<? extends X,​? extends Y>> entry,
                      Z... list)
        Ctor.
        Type Parameters:
        Z - Type of items in the list
        Parameters:
        entry - Func to create entry
        list - List of items
      • Synced

        public Synced​(Func<Z,​Map.Entry<? extends X,​? extends Y>> entry,
                      Iterable<Z> list)
        Ctor.
        Type Parameters:
        Z - Type of items in the list
        Parameters:
        entry - Func to create entry
        list - List of items
      • Synced

        public Synced​(Func<? super Z,​? extends Map.Entry<? extends X,​? extends Y>> entry,
                      Map<? extends X,​? extends Y> map,
                      Iterable<? extends Z> list)
        Ctor.
        Type Parameters:
        Z - Type of items in the list
        Parameters:
        entry - Func to create entry
        map - The map to extend
        list - List of items
      • Synced

        public Synced​(Iterable<Map.Entry<? extends X,​? extends Y>> list)
        Ctor.
        Parameters:
        list - Entries for the entries
      • Synced

        public Synced​(Map<? extends X,​? extends Y> map,
                      Iterable<Map.Entry<? extends X,​? extends Y>> list)
        Ctor.
        Parameters:
        map - Pre-existing map we want to extend
        list - Entries for the entries
      • Synced

        public Synced​(Map<? extends X,​? extends Y> map)
        Ctor.
        Parameters:
        map - The map