anchor.diff:  open ICSharpCode.NRefactory.Refactoring
   open FSharp.CompilerBinding
   open Microsoft.FSharp.Compiler.SourceCodeServices
  +open Mono.TextEditor
   
   type FSharpRefactoringContext() = 
      interface IRefactoringContext with   
  
positive.code: /// <summary>
  /// A code action represents a menu entry that does edit operation in one document.
  /// </summary>
  type ImplementInterfaceCodeAction() as x =
    inherit  CodeAction()
    do 
      x.Title    <- "Implement Interface"
      x.IdString <- "ImplementInterfaceCodeAction"
    override y.Run (context: IRefactoringContext, script:obj) = ()
  
  /// <summary>
  /// A code action provider is a factory that creates code actions for a document at a given location.
  
negative.code:                match sy.Symbol with
                 | :? FSharpEntity as e when e.IsInterface ->
                     //TODO: Check if completely implemented -> no command
                     yield ImplementInterfaceCodeAction(doc.Editor.Document, sy, location.Line) :> _
                 | _ -> ()
              | _ -> ()
            }
          | _ -> Seq.empty
       else Seq.empty
       
  type NRefactoryCodeActionSource() = 
    interface ICodeActionProviderSource with
      member x.GetProviders() = seq {
  