Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
Patch Available
Description
The way things work today, field IDs get constants in their structs, but all the methods take ints as parameters when they actually want a field id. This is not the best, since it can lead to accidentally putting in field ids that don't exist, and we have to do extra work to make sure things behave correctly.
Instead, we should make the field IDs into a proper Java enum class, and make the methods take that class as the parameter type. That way, we'll get the compiler's help enforcing our use of only legal field IDs, plus easier association with name info, docstrings, etc. All in all, it should amount to a usability improvement.