This PR prevents JsonType.serializeCodeFormatter from expanding collection- or field-specific tokens supported by JsonField.serializeCodeFormatter, and prevents JsonField.serializeCodeFormatter from expanding the generic ${subobject} token.
This is a big semantic change for code formatters. Previously, code formatters did not need to be opinionated about which tokens they would accept. Now, they do. So a simple String no longer works: an object is required to keep track of which tokens are valid. Therefore, all code formatter strings have been changed into CodeFormatter instances.
This PR prevents
JsonType.serializeCodeFormatter
from expanding collection- or field-specific tokens supported byJsonField.serializeCodeFormatter
, and preventsJsonField.serializeCodeFormatter
from expanding the generic${subobject}
token.This is a big semantic change for code formatters. Previously, code formatters did not need to be opinionated about which tokens they would accept. Now, they do. So a simple
String
no longer works: an object is required to keep track of which tokens are valid. Therefore, all code formatter strings have been changed intoCodeFormatter
instances.