checkStructure method

List<SmfIssue> checkStructure(
  1. ContractResult result, {
  2. required Map<String, String> files,
  3. required Map<String, ContributionOrigin> owners,
})

Indexes the Dart files among files, the text files of the rendered app of result by path, runs the structural rules of its present roles with the data it collected and the texts, and checks the symbols of their interfaces.

owners names who generated each file; the rules of the roles check only files with an owner.

Throws an ArgumentError if the case of result did not resolve.

Implementation

List<SmfIssue> checkStructure(
  ContractResult result, {
  required Map<String, String> files,
  required Map<String, ContributionOrigin> owners,
}) {
  final (:indexes, :issues) = _index(files, owners);
  return [...issues, ..._structureIssues(result, indexes, files, owners)];
}