docs: @Override
      public V applyIfAbsent(K key, IFunction<? super K, ? extends V> mappingFunction) {
          checkNotNull(key);
          checkNotNull(mappingFunction);
  
          int hash = hashOf(key);
          Segment<K, V> segment = segmentFor(hash);
          V v = segment.get(key, hash);
          return v == null ? segment.put(key, hash, null, mappingFunction, true) : v;
      }