MonoDevelop.CSharp.SignatureMarkupCreator.GetDelegateMarkup C# (CSharp) Method

GetDelegateMarkup() private method

private GetDelegateMarkup ( INamedTypeSymbol delegateType ) : string
delegateType INamedTypeSymbol
return string
		string GetDelegateMarkup (INamedTypeSymbol delegateType)
		{
			var result = new StringBuilder ();
			var type = delegateType.IsUnboundGenericType ? delegateType.OriginalDefinition : delegateType;
			var method = type.GetDelegateInvokeMethod ();

			AppendModifiers (result, type);
			result.Append (Highlight ("delegate ", colorStyle.KeywordDeclaration));
			if (method != null)
				result.Append (GetTypeReferenceString (method.ReturnType));
			if (BreakLineAfterReturnType) {
				result.AppendLine ();
			} else {
				result.Append (" ");
			}


			result.Append (FilterEntityName (type.Name));

			if (type.TypeArguments.Length > 0) {
				AppendTypeArgumentList (result, type);
			} else {
				AppendTypeParameterList (result, type);
			}
			//  TODO
			//			if (formattingOptions.SpaceBeforeMethodDeclarationParameterComma)
			//				result.Append (" ");

			result.Append ('(');
			AppendParameterList (
				result,
				method.Parameters,
				false /* formattingOptions.SpaceBeforeDelegateDeclarationParameterComma */,
				false /* formattingOptions.SpaceAfterDelegateDeclarationParameterComma */);
			result.Append (')');
			return result.ToString ();
		}