C++ Binding Generator

Abdulhaq alynch4047 at gmail.com
Tue Feb 18 00:50:28 PST 2014


On Monday, 17 February 2014 at 22:58:57 UTC, Andrej Mitrovic 
wrote:
>
> And then there are things like trying to allow access to 
> protected
> methods (meaning you have to re-declare them public for the C 
> wrappers
> to access them), which isn't easy because simply re-declaring 
> them
> only works in /some/ contests (specifically when overloads come 
> into
> play it's a mess). And then having to handle namespaces.. etc 
> etc.
> It's very easy to burn out. :)
>

There are many problems to solve, it take a lot of thought and 
time. I've ploughed all my spare time into it for a couple of 
months, then I moved house. Now I've got to get back in to it 
again :-).

>
> I can't even recall how I planned to support multiple 
> inheritance. I
> think I was planning on using interfaces, but to keep all 
> classes
> neatly castable up the hirearchy at the D side it would 
> probably mean
> having to make /all/ classes inherit from interfaces.
>

I'm only trying to handle mixin-style multiple inheritance, and 
doing it with interfaces for the mixins. I've got to finish up 
dealing with the fact that the C++ pointer can change for the 
same object with multiple inheritance, but it's just about done.

> And then you have to worry about memory management. Fun stuff..

It's so depressing when it all seems golden and then the 
application using the wrapper crashes! Anyway I believe I've got 
that aspect sorted out now. I wish D had proper support for weak 
references.

I'm glad to have this conversation it's given me renewed energy 
to finish it off...



More information about the Digitalmars-d mailing list