Home | History | Annotate | Download | only in Edit
      1 //===----- EditedSource.h - Collection of source edits ----------*- C++ -*-===//
      2 //
      3 //                     The LLVM Compiler Infrastructure
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 
     10 #ifndef LLVM_CLANG_EDIT_EDITSRECEIVER_H
     11 #define LLVM_CLANG_EDIT_EDITSRECEIVER_H
     12 
     13 #include "clang/Basic/LLVM.h"
     14 
     15 namespace clang {
     16   class SourceLocation;
     17   class CharSourceRange;
     18 
     19 namespace edit {
     20 
     21 class EditsReceiver {
     22 public:
     23   virtual ~EditsReceiver() { }
     24 
     25   virtual void insert(SourceLocation loc, StringRef text) = 0;
     26   virtual void replace(CharSourceRange range, StringRef text) = 0;
     27   /// \brief By default it calls replace with an empty string.
     28   virtual void remove(CharSourceRange range);
     29 };
     30 
     31 }
     32 
     33 } // end namespace clang
     34 
     35 #endif
     36