authz/perforce: refactor `p4 protects` parsing
Created by: bobheadxi
No behaviour changes here. Pulls the p4 protects
parsing that exists now into:
- a scanner that handles basic parsing and filtering of
p4 protects
output, and feeds structured data to a provided callback - two utility functions that can be provided to the scanner to do the same thing they do today (parse repo inclusion/exclusions, and parse users)
Both of the above now live in protects.go
This will improve the ergonomics for us to do more p4 protects
-related work, namely https://github.com/sourcegraph/sourcegraph/issues/26644