isAssignableFromResolvable method
Determines whether this ResolvableType is assignable from another ResolvableType.
This method performs comprehensive assignability checking between two ResolvableType instances, considering generic types, inheritance, and interface implementations.
Parameters:
other
: The ResolvableType to check assignability from
Returns:
- true if this type is assignable from the other ResolvableType
- false if assignment would not be valid
Example:
final listType = ResolvableType.forClass(List<Object>);
final stringListType = ResolvableType.forClass(List<String>);
final iterableType = ResolvableType.forClass(Iterable<String>);
print(listType.isAssignableFromResolvable(stringListType)); // depends on variance
print(iterableType.isAssignableFromResolvable(stringListType)); // true - List implements Iterable
// Useful for generic type validation
bool validateGenericAssignment(ResolvableType target, ResolvableType source) {
return target.isAssignableFromResolvable(source);
}
Implementation
bool isAssignableFromResolvable(ResolvableType other) {
return isAssignableFrom(other, false, null, false);
}