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