All Implemented Interfaces:
Processor, OptionConfiguration

A type-checker that warns, at compile time, if a program might throw UnsupportedOperationException at run time due to calling a sequenced-grow method on a collection.

The checker enforces the Modifiability type system, where @SeqGrowable collections can be safely added to at the front or back, @SeqUngrowable collections cannot, and @MaybeSeqGrowable collections have unknown sequenced-grow behavior.

See the Checker Framework Manual:
Modifiability Checker
  • Constructor Details

    • SeqGrowChecker

      public SeqGrowChecker()
      Creates a SeqGrowChecker.
  • Method Details

    • usesIteratorChecker

      protected boolean usesIteratorChecker()
      Description copied from class: ModifiabilityBaseChecker
      Returns true if this checker refines the result of iterator() and listIterator(), and therefore needs to read the Iterator Checker's qualifiers. The Iterator Checker itself does not (it would be its own subchecker), and neither does the SeqGrow Checker, because an iterator has no sequenced-grow methods.
      Overrides:
      usesIteratorChecker in class ModifiabilityBaseChecker
      Returns:
      true if this checker needs the Iterator Checker as a subchecker