Why are you using `std.traits.fullyQualifiedName`?

Dennis dkorpel at gmail.com
Fri Jan 20 23:14:39 UTC 2023


There's a Pull Request to turn Phobos' 
`std.traits.fullyQualifiedName` into a trait 
`__traits(fullyQualifedName)`. Because Phobos' implementation 
expands a lot of templates, the idea is to reduce compile times 
by implementing it in the compiler instead. However, there's some 
discussion around it, because Adam Ruppe considers it a function 
that shouldn't be used, because it's poorly defined and is prone 
to mistakenly be used for meta programming.

> I've never - not once - seen a case where people said FQN was 
> necessary where they were actually correct about it. It is a 
> misfeature that encourages bad code.

Hence the question in the title:
Are you using `std.traits.fullyQualifiedName`, and if so, what do 
you use it for?

Relevant links:
https://github.com/dlang/dmd/pull/14711#issuecomment-1396290841
https://github.com/dlang/dlang.org/pull/3495#issuecomment-1396295627



More information about the Digitalmars-d mailing list