describeEnum

/

describeEnum
(
T
)
()
if (
is(T == enum)
)

Examples

it should describe an enum

1 enum Type : string {
2   a = "A", b = "B", c = "C"
3 }
4 
5 auto result = describeEnum!(Type);
6 
7 result.name.should.equal("Type");
8 
9 result.type.name.should.equal("Type");
10 result.type.isEnum.should.equal(true);
11 
12 result.members.length.should.equal(3);
13 result.members[0].name.should.equal("a");
14 result.members[0].value.should.equal(`"A"`);
15 
16 result.location.file.should.equal("source/introspection/enum_.d");
17 result.location.line.should.be.greaterThan(0);
18 result.location.column.should.equal(3);
19 
20 result.protection.should.equal(Protection.public_);

Meta