On Sunday, 21 April 2019 at 20:58:19 UTC, Andrey wrote:
Hello,
I have got 2 enums. How to inherit one enum from another?
enum Key : string
{
K1 = "qwerty",
K2 = "asdfgh"
}
enum ExtendedKey : Key
{
E1 = "q1",
E2 = "w2",
E3 = "e3"
}
Result:
onlineapp.d(27): Error: cannot implicitly convert expression
"q1" of type string to Key
onlineapp.d(28): Error: cannot implicitly convert expression
"w2" of type string to Key
onlineapp.d(29): Error: cannot implicitly convert expression
"e3" of type string to Key
How to understand this?
I don't know why you want to do this, just use string directly.
enum ExtendedKey : typeof(EnumMembers!Key[0])
{
q = EnumMembers!Key[0]
}
would work..
Alternatively look at this thread:
https://forum.dlang.org/thread/irvtrixunermburvv...@forum.dlang.org?page=2
Where you can use the code and classes to subtype and emulate
enums.