Determine if a member is a method

Dicebot public at dicebot.lv
Wed Jan 1 09:39:22 PST 2014


On Wednesday, 1 January 2014 at 17:19:01 UTC, Frustrated wrote:
> There seems to be a bug. When I run it on a standard member it 
> works fine. When I run it on a property it throws an error
>
> src\phobos\std\traits.d(344): Error: forward reference of 
> variable parentPrefix
> src\phobos\std\traits.d(505): Error: template instance 
> std.traits.fullyQualifiedNameImplForSymbols!(Array!double) 
> error instantiating
> src\phobos\std\traits.d(295):        instantiated from here: 
> fullyQualifiedNameImplForTypes!(Array!double, false, false, 
> false, false)
>
> (admittedly it might not suppose be used on properties but it 
> shouldn't crash and burn. Not sure if this is an issue with 
> vibe.d or phobos)

Looks like it is an issue with return type which is template 
struct/class. There is a long-standing bug with 
fullyQualifiedName in that regard: 
https://d.puremagic.com/issues/show_bug.cgi?id=10502

I am aware of that issue but don't have a good generic solution 
for it within existing D reflection tools.

Properties on their own should work fine.


More information about the Digitalmars-d-learn mailing list