#include "clang/Sema/SemaSwift.h"
#include "clang/AST/DeclBase.h"
#include "clang/Basic/AttributeCommonInfo.h"
#include "clang/Basic/DiagnosticSema.h"
#include "clang/Basic/Specifiers.h"
#include "clang/Sema/Attr.h"
#include "clang/Sema/ParsedAttr.h"
#include "clang/Sema/Sema.h"
#include "clang/Sema/SemaObjC.h"
namespace clang {
SemaSwift::SemaSwift(Sema &S) : … { … }
SwiftNameAttr *SemaSwift::mergeNameAttr(Decl *D, const SwiftNameAttr &SNA,
StringRef Name) { … }
static bool isValidSwiftContextType(QualType Ty) { … }
static bool isValidSwiftIndirectResultType(QualType Ty) { … }
static bool isValidSwiftErrorResultType(QualType Ty) { … }
void SemaSwift::handleAttrAttr(Decl *D, const ParsedAttr &AL) { … }
void SemaSwift::handleBridge(Decl *D, const ParsedAttr &AL) { … }
static bool isErrorParameter(Sema &S, QualType QT) { … }
void SemaSwift::handleError(Decl *D, const ParsedAttr &AL) { … }
static void checkSwiftAsyncErrorBlock(Sema &S, Decl *D,
const SwiftAsyncErrorAttr *ErrorAttr,
const SwiftAsyncAttr *AsyncAttr) { … }
void SemaSwift::handleAsyncError(Decl *D, const ParsedAttr &AL) { … }
static bool validateSwiftFunctionName(Sema &S, const ParsedAttr &AL,
SourceLocation Loc, StringRef Name,
unsigned &SwiftParamCount,
bool &IsSingleParamInit) { … }
bool SemaSwift::DiagnoseName(Decl *D, StringRef Name, SourceLocation Loc,
const ParsedAttr &AL, bool IsAsync) { … }
void SemaSwift::handleName(Decl *D, const ParsedAttr &AL) { … }
void SemaSwift::handleAsyncName(Decl *D, const ParsedAttr &AL) { … }
void SemaSwift::handleNewType(Decl *D, const ParsedAttr &AL) { … }
void SemaSwift::handleAsyncAttr(Decl *D, const ParsedAttr &AL) { … }
void SemaSwift::AddParameterABIAttr(Decl *D, const AttributeCommonInfo &CI,
ParameterABI abi) { … }
}