clang 22.0.0git
|
Public Member Functions | |
BuiltinTypeMethodBuilder (BuiltinTypeDeclBuilder &DB, DeclarationName &Name, QualType ReturnTy, bool IsConst=false, bool IsCtor=false) | |
BuiltinTypeMethodBuilder (BuiltinTypeDeclBuilder &DB, StringRef NameStr, QualType ReturnTy, bool IsConst=false, bool IsCtor=false) | |
BuiltinTypeMethodBuilder (const BuiltinTypeMethodBuilder &Other)=delete | |
~BuiltinTypeMethodBuilder () | |
BuiltinTypeMethodBuilder & | operator= (const BuiltinTypeMethodBuilder &Other)=delete |
BuiltinTypeMethodBuilder & | addParam (StringRef Name, QualType Ty, HLSLParamModifierAttr::Spelling Modifier=HLSLParamModifierAttr::Keyword_in) |
template<typename... Ts> | |
BuiltinTypeMethodBuilder & | callBuiltin (StringRef BuiltinName, QualType ReturnType, Ts... ArgSpecs) |
template<typename TLHS , typename TRHS > | |
BuiltinTypeMethodBuilder & | assign (TLHS LHS, TRHS RHS) |
template<typename T > | |
BuiltinTypeMethodBuilder & | dereference (T Ptr) |
BuiltinTypeDeclBuilder & | finalize () |
Expr * | getResourceHandleExpr () |
Public Attributes | |
friend | BuiltinTypeDeclBuilder |
Definition at line 94 of file HLSLBuiltinTypeDeclBuilder.cpp.
|
inline |
Definition at line 131 of file HLSLBuiltinTypeDeclBuilder.cpp.
References clang::Method.
|
delete |
|
inline |
Definition at line 142 of file HLSLBuiltinTypeDeclBuilder.cpp.
References finalize().
BuiltinTypeMethodBuilder & clang::hlsl::BuiltinTypeMethodBuilder::addParam | ( | StringRef | Name, |
QualType | Ty, | ||
HLSLParamModifierAttr::Spelling | Modifier = HLSLParamModifierAttr::Keyword_in |
||
) |
Definition at line 360 of file HLSLBuiltinTypeDeclBuilder.cpp.
References clang::IdentifierTable::get(), clang::Sema::getASTContext(), clang::ASTContext::Idents, and clang::Method.
BuiltinTypeMethodBuilder & clang::hlsl::BuiltinTypeMethodBuilder::assign | ( | TLHS | LHS, |
TRHS | RHS | ||
) |
Definition at line 463 of file HLSLBuiltinTypeDeclBuilder.cpp.
References clang::BinaryOperator::Create(), clang::Sema::getASTContext(), clang::Expr::getType(), clang::OK_Ordinary, and clang::VK_PRValue.
BuiltinTypeMethodBuilder & clang::hlsl::BuiltinTypeMethodBuilder::callBuiltin | ( | StringRef | BuiltinName, |
QualType | ReturnType, | ||
Ts... | ArgSpecs | ||
) |
Definition at line 436 of file HLSLBuiltinTypeDeclBuilder.cpp.
References clang::ASTContext::BuiltinFnTy, clang::Call, clang::DeclRefExpr::Create(), clang::ImplicitCastExpr::Create(), clang::CallExpr::Create(), clang::Sema::getASTContext(), clang::FunctionDecl::getNameInfo(), clang::ASTContext::getPointerType(), clang::FunctionDecl::getReturnType(), clang::ValueDecl::getType(), clang::QualType::isNull(), and clang::VK_PRValue.
BuiltinTypeMethodBuilder & clang::hlsl::BuiltinTypeMethodBuilder::dereference | ( | T | Ptr | ) |
Definition at line 475 of file HLSLBuiltinTypeDeclBuilder.cpp.
References clang::UnaryOperator::Create(), clang::Sema::getASTContext(), clang::Type::getPointeeType(), clang::Expr::getType(), clang::OK_Ordinary, and clang::VK_PRValue.
BuiltinTypeDeclBuilder & clang::hlsl::BuiltinTypeMethodBuilder::finalize | ( | ) |
Definition at line 486 of file HLSLBuiltinTypeDeclBuilder.cpp.
References clang::DeclContext::addDecl(), clang::AS_public, clang::CompoundStmt::Create(), clang::ReturnStmt::Create(), clang::Sema::getASTContext(), clang::QualType::getNonReferenceType(), clang::ASTContext::hasSameUnqualifiedType(), clang::TagDecl::isCompleteDefinition(), clang::Method, and clang::ASTContext::VoidTy.
Referenced by ~BuiltinTypeMethodBuilder().
Expr * clang::hlsl::BuiltinTypeMethodBuilder::getResourceHandleExpr | ( | ) |
Definition at line 422 of file HLSLBuiltinTypeDeclBuilder.cpp.
References clang::CXXThisExpr::Create(), clang::MemberExpr::CreateImplicit(), clang::Sema::getASTContext(), clang::ValueDecl::getType(), clang::Method, clang::OK_Ordinary, and clang::VK_LValue.
|
delete |
friend clang::hlsl::BuiltinTypeMethodBuilder::BuiltinTypeDeclBuilder |
Definition at line 129 of file HLSLBuiltinTypeDeclBuilder.cpp.