MD5.put

void put(scope const(ubyte)[] data...) @trusted pure nothrow @nogc

Use this to feed the digest with data. Also implements the isOutputRange interface for ubyte and const(ubyte)[].

Example:

MD5 dig;
dig.put(cast(ubyte) 0); //single ubyte
dig.put(cast(ubyte) 0, cast(ubyte) 0); //variadic
ubyte[10] buf;
dig.put(buf); //buffer