Package io.codemodder

Interface RegionNodeMatcher


public interface RegionNodeMatcher
A type that can match a Region to a Range for determining if we should change the node at this location.
  • Field Details

    • EXACT_MATCH

      static final RegionNodeMatcher EXACT_MATCH
      Return true if the Node and Region start and end at the same location. Some SARIF providers seem report an end column that is +1 more than you think -- the spec probably says the value is exclusive or something.
    • MATCHES_START

      static final RegionNodeMatcher MATCHES_START
      Return true if the Node is Region start at the same location.
    • MATCHES_LINE

      static final RegionNodeMatcher MATCHES_LINE
    • REGION_INSIDE_RANGE

      static final RegionNodeMatcher REGION_INSIDE_RANGE
      Return true when the given Region is inside the given Range.

      This may be used when the SARIF provider reports a region that is smaller than expected (e.g. only the method name instead of the whole method expression). In these cases, the codemod developer should take extra care to make sure the method expression matches expectations, because this matcher may match multiple nodes erroneously.

  • Method Details

    • matches

      boolean matches(SourceCodeRegion region, com.github.javaparser.Range range)
      Return true if the given Region matches the given Range.