1218887Sdim//===- CocoaConventions.h - Special handling of Cocoa conventions -*- C++ -*--// 2218887Sdim// 3218887Sdim// The LLVM Compiler Infrastructure 4218887Sdim// 5218887Sdim// This file is distributed under the University of Illinois Open Source 6218887Sdim// License. See LICENSE.TXT for details. 7218887Sdim// 8218887Sdim//===----------------------------------------------------------------------===// 9218887Sdim// 10224145Sdim// This file implements cocoa naming convention analysis. 11218887Sdim// 12218887Sdim//===----------------------------------------------------------------------===// 13218887Sdim 14218887Sdim#ifndef LLVM_CLANG_ANALYSIS_DS_COCOA 15218887Sdim#define LLVM_CLANG_ANALYSIS_DS_COCOA 16218887Sdim 17234353Sdim#include "clang/Basic/LLVM.h" 18224145Sdim#include "llvm/ADT/StringRef.h" 19218887Sdim 20218887Sdimnamespace clang { 21226633Sdimclass FunctionDecl; 22226633Sdimclass QualType; 23224145Sdim 24218887Sdimnamespace ento { 25218887Sdimnamespace cocoa { 26218887Sdim 27226633Sdim bool isRefType(QualType RetTy, StringRef Prefix, 28226633Sdim StringRef Name = StringRef()); 29224145Sdim 30224145Sdim bool isCocoaObjectRef(QualType T); 31224145Sdim 32224145Sdim} 33224145Sdim 34224145Sdimnamespace coreFoundation { 35218887Sdim bool isCFObjectRef(QualType T); 36218887Sdim 37226633Sdim bool followsCreateRule(const FunctionDecl *FD); 38224145Sdim} 39218887Sdim 40224145Sdim}} // end: "clang:ento" 41218887Sdim 42218887Sdim#endif 43