Solving the drawbacks of @enum

EnumX.jl has been recently released, it might suit your needs (note that I’m not the author of the package).