Can't convert variables using __traits
Anonymouse
zorael at gmail.com
Mon Apr 18 16:25:40 UTC 2022
On Monday, 18 April 2022 at 11:31:29 UTC, Wusiki jeronii wrote:
> [...]
You can use `.tupleof` too to access or foreach over individual
members of a struct or a class.
```d
void somefun()
{
string[string] test = ["login" : "login", "type" : "42"];
Users* user = new Users();
assert(user.login == "");
assert(user.type == 0);
foreach (i, ref member; user.tupleof)
{
enum memberName = __traits(identifier, Users.tupleof[i]);
if (memberName in test)
{
member = to!(typeof(member))(test[memberName]);
}
}
assert(user.login == "login");
assert(user.type == 42);
}
```
More information about the Digitalmars-d
mailing list