public static <Key, Value> LazyObjectMap<Key, Value> toLazy(final ObjectMap<? extends Key, ? extends Value> map,
            final ObjectProvider<? extends Value> provider) {
        return new LazyObjectMap<Key, Value>(provider, map);
    }
public static < Key , Value > LazyObjectMap < Key , Value > toLazy ( final ObjectMap < ? extends Key , ? extends Value > map , final ObjectProvider < ? extends Value > provider ) { return new LazyObjectMap < Key , Value > ( provider , map ) ; }
@param map will be copied.
@param provider creates new object on get(key) calls if the key is not present in the map.
@return a new ordered map with the passed values.
@param <Key> type of map keys.
@param <Value> type of map values.