On Monday, 15 July 2013 at 13:47:10 UTC, Dicebot wrote:
On Monday, 15 July 2013 at 13:01:05 UTC, JS wrote:
...

I see. No, unfortunately, I am currently not aware of a way to make symbol act as type and and value at the same time.

However it is worth noting that you use plenty of excessive attributes. Currently it is not a compiler error but makes code much harder to read and confusing. For example, "final" has no meaning for structs as they can't be inherited from anyway. Duplicating immutable is also excessive because it is transitive.


Original I had it as a class. I'm not sure if it matters much between a class and a struct though?

In any case, I solved this problem by using an attribute to test instead of using isMutable. Obviously this requires adding a symbol but not a huge deal.

e.g.,

@Enum immutable struct ...

and hasAttribute(T, Enum) replaces isMutable(T).

Reply via email to