Remove unneccesary use of map of enum to tag.

Since enums now have direct access to their tag via `getValue()`, alter the generic bounds to facilitate direct access.