In particular lots of stuff that used to be needed with SourceKit that
we no longer need to keep around.
Identified using Periphery: https://github.com/peripheryapp/periphery
## Summary
Convert AccessibilityTraitForButtonRule to use SwiftSyntax instead of
SourceKit for improved performance and better accessibility trait
detection in SwiftUI modifier chains.
## Key Technical Improvements
- **Bidirectional modifier chain analysis** for comprehensive
accessibility trait detection
- **Better context awareness** through SwiftSyntax tree traversal
- **Accurate container exemption logic** for Button/Link components
- **Enhanced gesture detection** supporting `.onTapGesture` and
`.gesture` modifiers
- **Improved performance** with SwiftSyntax visitor pattern over
SourceKit AST parsing
## Migration Details
- Replaced `ASTRule` with `@SwiftSyntaxRule(optIn: true)` annotation
- Implemented `ViolationsSyntaxVisitor` pattern for systematic tree
traversal
- Added bidirectional accessibility trait detection that checks both
before and after tap gestures
- Enhanced exemption logic for inherently accessible containers
(Button, NavigationLink)
- Maintained full compatibility with existing rule behavior and test
cases
With the binding of configurations to their associated rule types
"unknown configuration" errors can be made more specific mentioning
also the rule's identifier in the printed message.