1//===- CocoaConventions.h - Special handling of Cocoa conventions -*- 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// This file implements cocoa naming convention analysis.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_CLANG_ANALYSIS_DS_COCOA
15#define LLVM_CLANG_ANALYSIS_DS_COCOA
16
17#include "clang/Basic/LLVM.h"
18#include "llvm/ADT/StringRef.h"
19
20namespace clang {
21class FunctionDecl;
22class QualType;
23
24namespace ento {
25namespace cocoa {
26
27  bool isRefType(QualType RetTy, StringRef Prefix,
28                 StringRef Name = StringRef());
29
30  bool isCocoaObjectRef(QualType T);
31
32}
33
34namespace coreFoundation {
35  bool isCFObjectRef(QualType T);
36
37  bool followsCreateRule(const FunctionDecl *FD);
38}
39
40}} // end: "clang:ento"
41
42#endif
43