reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

gen/tools/clang/include/clang/AST/AttrImpl.inc
 9447 ReturnTypestateAttr *ReturnTypestateAttr::clone(ASTContext &C) const {
 9448   auto *A = new (C) ReturnTypestateAttr(C, *this, state);
 9448   auto *A = new (C) ReturnTypestateAttr(C, *this, state);
 9461     OS << " __attribute__((return_typestate(\"" << ReturnTypestateAttr::ConvertConsumedStateToStr(getState()) << "\")))";
 9465     OS << " [[clang::return_typestate(\"" << ReturnTypestateAttr::ConvertConsumedStateToStr(getState()) << "\")]]";
11966     return cast<ReturnTypestateAttr>(this)->getSpelling();
12546     return cast<ReturnTypestateAttr>(this)->clone(C);
13126     return cast<ReturnTypestateAttr>(this)->printPretty(OS, Policy);
gen/tools/clang/include/clang/AST/AttrTextNodeDump.inc
  669   void VisitReturnTypestateAttr(const ReturnTypestateAttr *A) {
  670     const auto *SA = cast<ReturnTypestateAttr>(A); (void)SA;
  670     const auto *SA = cast<ReturnTypestateAttr>(A); (void)SA;
  672     case ReturnTypestateAttr::Unknown:
  675     case ReturnTypestateAttr::Consumed:
  678     case ReturnTypestateAttr::Unconsumed:
gen/tools/clang/include/clang/AST/AttrVisitor.inc
  951   bool TraverseReturnTypestateAttr(ReturnTypestateAttr *A);
  952   bool VisitReturnTypestateAttr(ReturnTypestateAttr *A) {
 3456 bool VISITORCLASS<Derived>::TraverseReturnTypestateAttr(ReturnTypestateAttr *A) {
 4426       return getDerived().TraverseReturnTypestateAttr(cast<ReturnTypestateAttr>(A));
gen/tools/clang/include/clang/AST/Attrs.inc
12697   static ReturnTypestateAttr *CreateImplicit(ASTContext &Ctx, ConsumedState State, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
12698     auto *A = new (Ctx) ReturnTypestateAttr(Ctx, CommonInfo, State);
12698     auto *A = new (Ctx) ReturnTypestateAttr(Ctx, CommonInfo, State);
12705   static ReturnTypestateAttr *Create(ASTContext &Ctx, ConsumedState State, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
12706     auto *A = new (Ctx) ReturnTypestateAttr(Ctx, CommonInfo, State);
12706     auto *A = new (Ctx) ReturnTypestateAttr(Ctx, CommonInfo, State);
12712   static ReturnTypestateAttr *CreateImplicit(ASTContext &Ctx, ConsumedState State, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
12716   static ReturnTypestateAttr *Create(ASTContext &Ctx, ConsumedState State, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
12728   ReturnTypestateAttr *clone(ASTContext &C) const;
12738       .Case("unknown", ReturnTypestateAttr::Unknown)
12739       .Case("consumed", ReturnTypestateAttr::Consumed)
12740       .Case("unconsumed", ReturnTypestateAttr::Unconsumed)
12751     case ReturnTypestateAttr::Unknown: return "unknown";
12752     case ReturnTypestateAttr::Consumed: return "consumed";
12753     case ReturnTypestateAttr::Unconsumed: return "unconsumed";
gen/tools/clang/include/clang/Sema/AttrTemplateInstantiate.inc
 1102       const auto *A = cast<ReturnTypestateAttr>(At);
 1102       const auto *A = cast<ReturnTypestateAttr>(At);
gen/tools/clang/include/clang/Serialization/AttrPCHRead.inc
 2086     ReturnTypestateAttr::ConsumedState state(static_cast<ReturnTypestateAttr::ConsumedState>(Record.readInt()));
 2087     New = new (Context) ReturnTypestateAttr(Context, Info, state);
gen/tools/clang/include/clang/Serialization/AttrPCHWrite.inc
 1564     const auto *SA = cast<ReturnTypestateAttr>(A);
 1564     const auto *SA = cast<ReturnTypestateAttr>(A);
include/llvm/ADT/STLExtras.h
   75       typename std::add_pointer<typename std::add_const<T>::type>::type;
include/llvm/Support/Casting.h
   58     return To::classof(&Val);
   66   static inline bool doit(const From &) { return true; }
  104   static inline bool doit(const From *Val) {
  106     return isa_impl<To, From>::doit(*Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  142   return isa_impl_wrap<X, const Y,
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
tools/clang/include/clang/AST/AttrIterator.h
   47     while (!isa<SpecificAttr>(*Current))
   52     while (Current != I && !isa<SpecificAttr>(*Current))
   57   using value_type = SpecificAttr *;
   58   using reference = SpecificAttr *;
   59   using pointer = SpecificAttr *;
   68     return cast<SpecificAttr>(*Current);
  101 inline specific_attr_iterator<SpecificAttr, Container>
  106 inline specific_attr_iterator<SpecificAttr, Container>
  117 inline SpecificAttr *getSpecificAttr(const Container& container) {
  118   specific_attr_iterator<SpecificAttr, Container> i =
  119       specific_attr_begin<SpecificAttr>(container);
  120   if (i != specific_attr_end<SpecificAttr>(container))
tools/clang/include/clang/AST/DeclBase.h
  538   template<typename T> T *getAttr() const {
  539     return hasAttrs() ? getSpecificAttr<T>(getAttrs()) : nullptr;
tools/clang/lib/Analysis/Consumed.cpp
  224 mapReturnTypestateAttrState(const ReturnTypestateAttr *RTSAttr) {
  226   case ReturnTypestateAttr::Unknown:
  228   case ReturnTypestateAttr::Unconsumed:
  230   case ReturnTypestateAttr::Consumed:
  647     if (ReturnTypestateAttr *RT = Param->getAttr<ReturnTypestateAttr>())
  647     if (ReturnTypestateAttr *RT = Param->getAttr<ReturnTypestateAttr>())
  692     if (ReturnTypestateAttr *RTA = Fun->getAttr<ReturnTypestateAttr>())
  692     if (ReturnTypestateAttr *RTA = Fun->getAttr<ReturnTypestateAttr>())
  780   if (ReturnTypestateAttr *RTA = Constructor->getAttr<ReturnTypestateAttr>()) {
  780   if (ReturnTypestateAttr *RTA = Constructor->getAttr<ReturnTypestateAttr>()) {
 1095       const ReturnTypestateAttr *RTA = Param->getAttr<ReturnTypestateAttr>();
 1095       const ReturnTypestateAttr *RTA = Param->getAttr<ReturnTypestateAttr>();
 1206   if (const ReturnTypestateAttr *RTSAttr = D->getAttr<ReturnTypestateAttr>()) {
 1206   if (const ReturnTypestateAttr *RTSAttr = D->getAttr<ReturnTypestateAttr>()) {
tools/clang/lib/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/Sema/SemaDeclAttr.cpp
 1210   ReturnTypestateAttr::ConsumedState ReturnState;
 1214     if (!ReturnTypestateAttr::ConvertStrToConsumedState(IL->Ident->getName(),
 1251   D->addAttr(::new (S.Context) ReturnTypestateAttr(S.Context, AL, ReturnState));
usr/include/c++/7.4.0/type_traits
 1558     { typedef _Tp     type; };
 1580     { typedef _Tp const     type; };