haveDeclaredTypeNameEndingWithAll method

MemberPredicateBuilder haveDeclaredTypeNameEndingWithAll(
  1. Iterable<String> suffixes
)

Selects fields whose declared type name ends with every value in suffixes.

Implementation

MemberPredicateBuilder haveDeclaredTypeNameEndingWithAll(Iterable<String> suffixes) {
  final valueList = suffixes.toNonEmptyList('suffixes');
  return satisfy(
    HeimdallPredicate.allOf(
      valueList.map(
        (suffix) => memberDeclaredTypeNamePredicate(
          'have declared type name ending with $suffix',
          (typeName) => typeName.endsWith(suffix),
        ),
      ),
      description: 'have declared type name ending with all of ${valueList.join(', ')}',
    ),
  );
}