Since multiple rules require finding whether a state can reach another state without consuming input, there should be a common helper to accomplish this. This method should perform a simple DFS that only traverses epsilon edges.
We could also calculate the length of the shortest path and check that it's zero, but this is simpler and more efficient.
- contributes to
-
MMF-2182 Help Java developers writing regexp running fast, with the correct amount of resources and really doing what developers intended
-
- Resolved
-
- depends upon
-
SONARJAVA-3549 Add support for automata-based analyses for regular expressions
-
- Closed
-
- is depended upon by
-
SONARJAVA-3552 Rule S5996: Regex boundaries should not be used in a way that can never match
-
- Closed
-
-
SONARJAVA-3567 Rule S6019: Reluctant quantifiers in regular expressions should be followed by an expression that can't match the empty string
-
- Closed
-
-
SONARJAVA-3568 S5852 should use automata to increase its accuracy
-
- In Progress
-