Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Customizations are used for many things; here are some gleaned from some actual use cases:

  • Getters which return Java collection objects instead of declared type (e.g. type = FsList, object returned is an ArrayList<FeatureStructure> or a Set<FeatureStructure>)
  • Additional "setter" forms.  example: a setter for a float feature, taking a "Float" argument, and handling various NaN style including mapping "null" to one of them, then calling the underlying setter
  • Additional methods that operate on multiple fields at once (perhaps keeping them in "sync")
  • Override clone to do a deeper copy
  • modify a getter - if null is the value, substitute a custom alternative
  • Additional arbitrary methods that produce values via operations on features
  • Additional constructors, taking more arguments, setting fields
  • Additional fields (not in the type system, not serializable, etc.)
  • custom tostring methods
  • defining a custom compareTo method

...