public virtual S VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration, T data) { return(VisitChildren(operatorDeclaration, data)); }
void WriteMemberDeclarationName(IMember member, StringWriter writer) { TypeSystemAstBuilder astBuilder = CreateAstBuilder(); if ((ConversionFlags & ConversionFlags.UseFullyQualifiedMemberNames) == ConversionFlags.UseFullyQualifiedMemberNames) { writer.Write(ConvertType(member.DeclaringType)); writer.Write('.'); } switch (member.EntityType) { case EntityType.Indexer: writer.Write("this"); break; case EntityType.Constructor: writer.Write(member.DeclaringType.Name); break; case EntityType.Destructor: writer.Write('~'); writer.Write(member.DeclaringType.Name); break; case EntityType.Operator: switch (member.Name) { case "op_Implicit": writer.Write("implicit operator "); writer.Write(ConvertType(member.ReturnType)); break; case "op_Explicit": writer.Write("explicit operator "); writer.Write(ConvertType(member.ReturnType)); break; default: writer.Write("operator "); var operatorType = OperatorDeclaration.GetOperatorType(member.Name); if (operatorType.HasValue) { writer.Write(OperatorDeclaration.GetToken(operatorType.Value)); } else { writer.Write(member.Name); } break; } break; default: writer.Write(member.Name); break; } if ((ConversionFlags & ConversionFlags.ShowTypeParameterList) == ConversionFlags.ShowTypeParameterList && member.EntityType == EntityType.Method) { CreatePrinter(writer).WriteTypeParameters(astBuilder.ConvertEntity(member).GetChildrenByRole(AstNode.Roles.TypeParameter)); } }