Registers a flag whose value can be any string from enum_values.

Instead of a string enum, prefer DEFINE_enum_class, which allows defining enums from an enum.Enum class.

name str, the flag name.
default str|None, the default value of the flag.
enum_values [str], a non-empty list of strings with the possible values for the flag.
help str, the help message.
flag_values FlagValues, the FlagValues instance with which the flag will be registered. This should almost never need to be overridden.
module_name str, the name of the Python module declaring this flag. If not provided, it will be computed using the stack trace of this call.
**args dict, the extra keyword args that are passed to Flag init.

a handle to defined flag.