1 //===--- Rewriters.h - Rewritings ---------------------------*- 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_REWRITERS_H 11 #define LLVM_CLANG_EDIT_REWRITERS_H 12 13 namespace clang { 14 class ObjCMessageExpr; 15 class ObjCMethodDecl; 16 class ObjCInterfaceDecl; 17 class ObjCProtocolDecl; 18 class NSAPI; 19 class EnumDecl; 20 class TypedefDecl; 21 class ParentMap; 22 23 namespace edit { 24 class Commit; 25 26 bool rewriteObjCRedundantCallWithLiteral(const ObjCMessageExpr *Msg, 27 const NSAPI &NS, Commit &commit); 28 29 bool rewriteToObjCLiteralSyntax(const ObjCMessageExpr *Msg, 30 const NSAPI &NS, Commit &commit, 31 const ParentMap *PMap); 32 33 bool rewriteToObjCSubscriptSyntax(const ObjCMessageExpr *Msg, 34 const NSAPI &NS, Commit &commit); 35 36 } 37 38 } // end namespace clang 39 40 #endif 41