static string GeneratePartialClassContextStub(DebuggerCompletionContext context) { var compilation = SD.ParserService.GetCompilationForFile(context.FileName); var file = SD.ParserService.GetExistingUnresolvedFile(context.FileName); if (compilation == null || file == null) { return(""); } var member = file.GetMember(context.Location); if (member == null) { return(""); } var builder = new TypeSystemAstBuilder(); EntityDeclaration decl = builder.ConvertEntity(member.Resolve(new SimpleTypeResolveContext(compilation.MainAssembly))); decl.Name = "__DebuggerStub_" + decl.Name; decl.Modifiers &= (Modifiers.Static); switch (member.SymbolKind) { case SymbolKind.Property: break; case SymbolKind.Indexer: break; case SymbolKind.Event: break; case SymbolKind.Method: GenerateBodyFromContext(builder, context, (MethodDeclaration)decl); break; case SymbolKind.Operator: break; case SymbolKind.Constructor: break; case SymbolKind.Destructor: break; case SymbolKind.Accessor: break; default: throw new ArgumentOutOfRangeException(); } return(WrapInType(member.DeclaringTypeDefinition, decl.ToString())); }