Как правильно переводить туда и обратно между указателем void* и значением класса в D, первым или вторым?
void*
cast(ClassName)voidPointer
cast(void*)this
cast(ClassName*)voidPointer
первый.Ссылка на класс уже является указателем внутри, поэтому вы хотите привести его непосредственно к ней.