Backend Codegen is problematic: it exposes a java.util.List, but this is actually a com.google.protobuf.Internal.ProtobufList. ProtobufList throws on mutation
Extends List to add the capability to make the list immutable and inspect if it is modifiable.
https://protobuf.dev/reference/java/api-docs/com/google/protobuf/Internal.ProtobufList
Reported in: ankidroid/Anki-Android#14948