Source
String get linkedName {
if (_linkedName != null) return _linkedName;
StringBuffer buf = new StringBuffer();
if (isParameterType) {
buf.write(name);
} else {
buf.write(element.linkedName);
}
// not TypeParameterType or Void or Union type
if (isParameterizedType) {
if (typeArguments.every((t) => t.linkedName == 'dynamic')) {
_linkedName = buf.toString();
return _linkedName;
}
if (typeArguments.isNotEmpty) {
buf.write('<');
buf.writeAll(typeArguments.map((t) => t.linkedName), ', ');
buf.write('>');
}
}
_linkedName = buf.toString();
return _linkedName;
}