This is the offset in the original file at which the content field started. This is useful if you need to reparse the content of CRs dynamically while being able to build locations.
This is the leading string that contains the comment markers on the left of the content field, stripped. This may be useful when linting comments and working on CR formatting.
priority t represents the expectation as to when work on the CR is meant to happen. It is based on the header's qualifier except that XCRs and invalid CRs are meant to be worked on Now.
This digest is computed such that changes in positions in a file, or changes in whitespaces are ignored. It is used by downstream systems to detect that two CRs are equivalent, which in turn may affect when a CR is active.
reindented_content t returns the content of the CR with leading indentation removed or normalized. This is useful for displaying multiple CRs together in a unified format, such as in crs grep. new_line_prefix allows to control the indentation or margin used to produce the new output. It defaults to "". Trailing whitespace are removed from new_line_prefix as needed.
This module is exported to be used by libraries with strong ties to cr_comment. Its signature may change in breaking ways at any time without prior notice, and outside the guidelines set by semver.
In particular, the intention here is that CRs may only be created using dedicated helpers libraries that are defined in this project, parsing them from files in vcs trees.