This repository was archived by the owner on Mar 4, 2021. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The source code contains many references of the
Enumraw type. Using anEnumreference merely says that you're referring to an enumerated value. Because Enum is a raw type, it causes compiler warnings (or requires suppression) and creates a possibility of using an incorrect enumerated value, because the compiler cannot determine if an assignment is safe. We could eliminate the compiler warnings by usingEnum<?>instead ofEnum, but it won't prevent the possible "enum mismatch".This pull request proposes a change that would introduce several marker interfaces -
MonkeyType,EventType,GroupTypeandResourceType. Enumerated types in Java can implement interfaces and therefore we can mark each existing enum with one of the marker interfaces to indicate their intended use. This makes enumeration safer to use while still maintaining the flexibility of using different enumerations in different contexts.