resolveGenerics method

List<Class?> resolveGenerics()

Convenience method that resolves all generic parameters to Class instances.

This method gets all generic parameters and resolves each one to a Class, returning a list of Class instances. Unresolvable generics will be null in the returned list.

Returns:

  • List of Class instances representing resolved generic parameters
  • List may contain null values for unresolvable generics

Example:

final mapType = ResolvableType.forClass(Map<String, int>);
final resolvedGenerics = mapType.resolveGenerics();

print(resolvedGenerics.length); // 2
print(resolvedGenerics[0]?.getType()); // String
print(resolvedGenerics[1]?.getType()); // int

// Handle unresolvable generics
final partialType = ResolvableType.forClass(Map<String, dynamic>);
final partialResolved = partialType.resolveGenerics();
print(partialResolved[0]?.getType()); // String
print(partialResolved[1]); // null (dynamic cannot be resolved)

Implementation

List<Class?> resolveGenerics() {
  final generics = getGenerics();
  final resolvedGenerics = <Class?>[];
  for (final generic in generics) {
    resolvedGenerics.add(generic.resolve());
  }
  return resolvedGenerics;
}