String linkedName

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