code: public static FileBuffer allocate(File file, long initialCapacity, long maxCapacity) {
      return allocate(file, FileBytes.DEFAULT_MODE, initialCapacity, maxCapacity);
    }
docs: Allocates a file buffer.
  <p>
  The underlying {@link java.io.RandomAccessFile} will be created in {@code rw} mode by default.
  The resulting buffer will be initialized with a capacity of {@code initialCapacity}. The underlying {@link FileBytes}
  will be initialized to the nearest power of {@code 2}. As bytes are written to the file the buffer's capacity will
  double up to {@code maxCapacity}.
  
  @param file The file to allocate.
  @param initialCapacity The initial capacity of the buffer.
  @param maxCapacity The maximum allowed capacity of the buffer.
  @return The allocated buffer.
  
  @see FileBuffer#allocate(java.io.File)
  @see FileBuffer#allocate(java.io.File, long)
  @see FileBuffer#allocate(java.io.File, String, long, long)