Iteration over structure fields and properties

Void-995 via Digitalmars-d digitalmars-d at puremagic.com
Thu Sep 7 00:22:49 PDT 2017


On Thursday, 7 September 2017 at 07:09:29 UTC, Jacob Carlborg 
wrote:
> On 2017-09-06 09:36, Void-995 wrote:
>> I really appreciate traits and what they are introducing into 
>> the process. I'm curious how I can iterate over all fields of 
>> the structure (s.tupleof pretty much works for that) and 
>> properties while ignoring methods and sub data types that 
>> defined inside of structure (they defined only as type, not 
>> the field but of course they got into __traits(allMembers, 
>> S)). The idea is to use foreach to easily print into console 
>> something like:
>> 
>> fieldNameA: fieldValueA
>> fieldNameB: fieldValueB
>> ...
>> propertyNameA: propertyValueA
>> ...
>
> You can use .tupleof and __traits(identifier) for this.

Would it work with:
@property int propertyNameA()

And how to get key names then? As I remember tupleof return tuple 
of fields only, at least what I got how it works.



More information about the Digitalmars-d mailing list