selectBestMatchingQualifier static method

ResourceQualifiers? selectBestMatchingQualifier(
  1. Set<ResourceQualifiers>? qualifiersSet,
  2. ResourceQualifiers qualifiers
)

Implementation

static ResourceQualifiers? selectBestMatchingQualifier(
  Set<ResourceQualifiers>? qualifiersSet,
  ResourceQualifiers qualifiers,
) {
  final candidates = _generateCandidateQualifiers(qualifiers);
  print(
    'qualifier candidates: ${candidates.map((e) => '(${e.toString()})').join(' , ')}',
  );

  if (qualifiersSet == null || qualifiersSet.isEmpty) {
    print('No qualifiers available');
    return null;
  }

  // 从 qualifiersSet , 按优先级 candidates
  for (final candidate in candidates) {
    if (qualifiersSet.contains(candidate)) {
      print('matched qualifier: ${candidate.toString()}');
      return candidate;
    }
  }

  print('No matching qualifier found');
  return null;
}