I think you should not use exceptions mechanism in this place at all. Since it is many times slower than simple conditional statement. It will be executed during each uniqueness validation, only few of them will be for `enum` other will be rescued from `NoMethodError`, which will lead to performance issues.