Converting C .h Files to D Modules

2012-03-20 Thread Pedro Lacerda
Hi all, How to convert the following struct to D? typedef struct S { int type; void *obj; } S; I didn't found anything at http://dlang.org/htomodule.html.

Re: Converting C .h Files to D Modules

2012-03-20 Thread Pedro Lacerda
Ouch, void* is the same in both languages, sorry. I addressed a new problem: typedef struct SomeFunctions { void *(*funcA)(char*, size_t); void *(*funcB)(void); } SomeFunctions; How do I convert that functions references into an D struct? On Tue, Mar 20, 2012 at 3:01 PM, Pedro Lacerda

Re: Converting C .h Files to D Modules

2012-03-20 Thread Andrej Mitrovic
On 3/21/12, Pedro Lacerda wrote: > Ouch, void* is the same in both languages, sorry. I addressed a new problem: > > typedef struct SomeFunctions { > void *(*funcA)(char*, size_t); > void *(*funcB)(void); > } SomeFunctions; > > How do I convert that functions references into an D struct? e

Re: Converting C .h Files to D Modules

2012-03-20 Thread bearophile
Andrej Mitrovic: extern(C) struct SomeFunctions { void function(char*, size_t) funcA; void function() funcB; } Are you sure that works? If that doesn't work then use this and write a bug report: struct SomeFunctions { extern(C) void function(char*, size_t) funcA; extern(C) vo

Re: Converting C .h Files to D Modules

2012-03-20 Thread Andrej Mitrovic
On 3/21/12, bearophile wrote: > Are you sure that works? It's easy to test: extern(C) struct SomeFunctions { void function(char*, size_t) funcA; void function() funcB; } void main() { writeln(typeof(SomeFunctions.funcA).stringof); }

Re: Converting C .h Files to D Modules

2012-03-20 Thread dnewbie
On Wednesday, 21 March 2012 at 01:09:58 UTC, Andrej Mitrovic wrote: On 3/21/12, Pedro Lacerda wrote: Ouch, void* is the same in both languages, sorry. I addressed a new problem: typedef struct SomeFunctions { void *(*funcA)(char*, size_t); void *(*funcB)(void); } SomeFunctions; How d

Re: Converting C .h Files to D Modules

2012-03-20 Thread Pedro Lacerda
On Tue, Mar 20, 2012 at 10:53 PM, dnewbie wrote: > On Wednesday, 21 March 2012 at 01:09:58 UTC, Andrej Mitrovic wrote: > >> On 3/21/12, Pedro Lacerda wrote: >> >>> Ouch, void* is the same in both languages, sorry. I addressed a new >>> problem: >>> >>> typedef struct SomeFunctions { >>>void

Re: Converting C .h Files to D Modules

2012-03-20 Thread Andrej Mitrovic
On 3/21/12, Pedro Lacerda wrote: > dnewbie, you're correct, the return type is void* instead of void. I didn't notice the pointer thanks to the silly C function pointer syntax. :)

Re: Converting C .h Files to D Modules

2012-03-21 Thread Timon Gehr
On 03/20/2012 07:01 PM, Pedro Lacerda wrote: Hi all, How to convert the following struct to D? typedef struct S { int type; void *obj; } S; I didn't found anything at http://dlang.org/htomodule.html. (Assuming your 'int' is 32 bits) struct S{ int type; void* obj; }