How can I properly import functions from gcx in object.di?

Antti-Ville Tuunainen avtuunainen at gmail.com
Tue Jul 10 16:54:48 PDT 2012


I'm working on the precise gc patches. I now have a bunch of 
templates and all the other infrastructure, but what's holding me 
back is that I don't quite understand the .di files.

In order for user-defined datastructures to instantiate the 
correct templates, the template code needs to live (/be imported 
into) the object.di file. However, for any kind of efficiency, 
the templates also need to be able to directly call functions 
and/or access the state from src/gc/gcx.d. I cannot just import 
it, because it won't be available during (user code) compilation. 
What is the correct approach?

Currently, I'm leaning on creating a new public gc.di (or 
similar), with functions to scan ranges and single pointers, and 
add implementations of those to the gcx side. Is this the correct 
way forward?


More information about the Digitalmars-d mailing list