
  -spec erlang:adler32_combine(FirstAdler, SecondAdler, SecondSize) ->
                                  non_neg_integer()
                                  when
                                      FirstAdler :: non_neg_integer(),
                                      SecondAdler :: non_neg_integer(),
                                      SecondSize :: non_neg_integer().

  Combines two previously computed adler32 checksums. This
  computation requires the size of the data object for the second
  checksum to be known.

  The following code:

    Y = erlang:adler32(Data1),
    Z = erlang:adler32(Y,Data2).

  assigns the same value to Z as this:

    X = erlang:adler32(Data1),
    Y = erlang:adler32(Data2),
    Z = erlang:adler32_combine(X,Y,iolist_size(Data2)).
