hasMember - multiple declarations
Function hasMember
Returns true if a member can be found on aggregate with the given memberName, false otherwise.
auto hasMember(alias aggregate, string memberName)() pure nothrow @safe
if (isAggregate!aggregate || isModule!aggregate);
Example
struct S {
long id;
int age;
string name() {
return "name";
}
}
hasMember!(S, "id"); // returns true
hasMember!(S, "name"); // returns true
hasMember!(S, "doesNotExist"); // returns false
Function hasMember
Returns true if a member can be found on aggregate filtered with the given predicate, false otherwise.
auto hasMember(alias aggregate, alias predicate)() pure nothrow @safe
if ((isAggregate!aggregate || isModule!aggregate) && is(typeof(unaryFun!predicate)));
Example
struct S {
long id;
int age;
string name() {
return "name";
}
}
hasMember!(S, member => is(member .type == long)); // returns true
hasMember!(S, member => is(member .type == string)); // returns true
hasMember!(S, member => member .name == "doesNotExist"); // returns false