digitalmars.D.learn - What is the common way of porting opaque types in C header files?
- Gary Willoughby (7/7) Dec 12 2013 I have a lot of opaque types in C headers i'm porting to D. What
- Mike Parker (4/11) Dec 12 2013 D:
- Gary Willoughby (2/18) Dec 13 2013 Ah right, thanks. I didn't know D allows such types.
I have a lot of opaque types in C headers i'm porting to D. What is the best way to handle these? Would you just use void pointers? In the below example Tcl_AsyncHandler_ is not defined anywhere. C: typedef struct Tcl_AsyncHandler_ *Tcl_AsyncHandler; D: alias void* Tcl_AsyncHandler;
Dec 12 2013
On 12/13/2013 7:52 AM, Gary Willoughby wrote:I have a lot of opaque types in C headers i'm porting to D. What is the best way to handle these? Would you just use void pointers? In the below example Tcl_AsyncHandler_ is not defined anywhere. C: typedef struct Tcl_AsyncHandler_ *Tcl_AsyncHandler; D: alias void* Tcl_AsyncHandler;D: struct Tcl_AsyncHandler_; alias Tcl_AsyncHandler = Tcl_AsyncHandler_*;
Dec 12 2013
On Friday, 13 December 2013 at 01:20:41 UTC, Mike Parker wrote:On 12/13/2013 7:52 AM, Gary Willoughby wrote:Ah right, thanks. I didn't know D allows such types.I have a lot of opaque types in C headers i'm porting to D. What is the best way to handle these? Would you just use void pointers? In the below example Tcl_AsyncHandler_ is not defined anywhere. C: typedef struct Tcl_AsyncHandler_ *Tcl_AsyncHandler; D: alias void* Tcl_AsyncHandler;D: struct Tcl_AsyncHandler_; alias Tcl_AsyncHandler = Tcl_AsyncHandler_*;
Dec 13 2013