Hi D
One of the dependencies for my project has a class that makes use of the alias x this
construct. According to dmd 2.103, alias this is deprecated for classes, so I'd like to correct the problem.
Is there a specific paragraph or two that I can read to find out what is the appropriate replacement construct? On a related note, has anyone created a code maintenance guide to help work-a-day programmers navigate recent changes to the D language?
For reference, here's a the code in question (from dpq2, result.d):
package immutable final class ResultContainer
{
version(Dpq2_Dynamic)
{
import dpq2.dynloader: ReferenceCounter;
private ReferenceCounter dynLoaderRefCnt;
}
// ResultContainer allows only one copy of PGresult* due to avoid
// double free. For the same reason this class is declared as final.
private PGresult* result;
alias result this; //<---- Deprecation Warning Here
package this(immutable PGresult* r)
{
assert(r);
result = r;
version(Dpq2_Dynamic) dynLoaderRefCnt = ReferenceCounter(true);
}
...
Thanks for any pointers,