resolveGenerics method
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;
}