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 15namespace clang { 16 class SourceLocation; 17 class CharSourceRange; 18 19namespace edit { 20 21class EditsReceiver { 22public: 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