typeToCode function
String
typeToCode(
- DartType type
)
Implementation
String typeToCode(DartType type) {
if (type.isDynamic) {
return 'dynamic';
} else if (type is InterfaceType) {
var typeArguments = type.typeArguments;
if (typeArguments.isEmpty) {
return type.element.name;
} else {
final typeArgumentsStr = typeArguments.map(typeToCode).join(', ');
return '${type.element.name}<$typeArgumentsStr>';
}
} else if (type is TypeParameterType) {
return type.element.name;
} else if (type.isVoid) {
return 'void';
} else {
throw UnimplementedError('(${type.runtimeType}) $type');
}
}