On Friday, 13 February 2015 at 22:55:27 UTC, anonymous wrote:
On Thursday, 12 February 2015 at 23:52:41 UTC, Foo wrote:
This is something I've done recently.
Would be glad if my code will help you:
https://github.com/Dgame/m3
Especially the m3.d module could be useful for you.
/* Class and Struct */
emplace: You can't assume zero-initialization for structs.
destruct: Is not memory-safe, and must not be marked @trusted.
/* Array */
make: You can't assume zero-initialization. T.sizeof is not the
size of an element.
I'm aware of that.
reserve: Not safe (you're freeing the old memory), must not be
@trusted.
append: T.sizeof is not the size of an element. You're
multiplying twice with T.sizeof; in `append`, and also in
`reserve`.
destruct: Not safe, must not be @trusted.
Ah, that is nice to know. I will fix this soon. Or would you help
me out with an PR?
Don't understand me wrong. My code is not perfect, but maybe it
can be helpful for someone.