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

Declarations

tools/clang/include/clang/Sema/Sema.h
  200   class VisibilityAttr;

References

gen/tools/clang/include/clang/AST/AttrImpl.inc
11001 VisibilityAttr *VisibilityAttr::clone(ASTContext &C) const {
11002   auto *A = new (C) VisibilityAttr(C, *this, visibility);
11002   auto *A = new (C) VisibilityAttr(C, *this, visibility);
11015     OS << " __attribute__((visibility(\"" << VisibilityAttr::ConvertVisibilityTypeToStr(getVisibility()) << "\")))";
11019     OS << " [[gnu::visibility(\"" << VisibilityAttr::ConvertVisibilityTypeToStr(getVisibility()) << "\")]]";
12046     return cast<VisibilityAttr>(this)->getSpelling();
12626     return cast<VisibilityAttr>(this)->clone(C);
13206     return cast<VisibilityAttr>(this)->printPretty(OS, Policy);
gen/tools/clang/include/clang/AST/AttrTextNodeDump.inc
  792   void VisitVisibilityAttr(const VisibilityAttr *A) {
  793     const auto *SA = cast<VisibilityAttr>(A); (void)SA;
  793     const auto *SA = cast<VisibilityAttr>(A); (void)SA;
  795     case VisibilityAttr::Default:
  798     case VisibilityAttr::Hidden:
  801     case VisibilityAttr::Protected:
gen/tools/clang/include/clang/AST/AttrVisitor.inc
 1111   bool TraverseVisibilityAttr(VisibilityAttr *A);
 1112   bool VisitVisibilityAttr(VisibilityAttr *A) {
 3842 bool VISITORCLASS<Derived>::TraverseVisibilityAttr(VisibilityAttr *A) {
 4506       return getDerived().TraverseVisibilityAttr(cast<VisibilityAttr>(A));
gen/tools/clang/include/clang/AST/Attrs.inc
14896   static VisibilityAttr *CreateImplicit(ASTContext &Ctx, VisibilityType Visibility, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
14897     auto *A = new (Ctx) VisibilityAttr(Ctx, CommonInfo, Visibility);
14897     auto *A = new (Ctx) VisibilityAttr(Ctx, CommonInfo, Visibility);
14904   static VisibilityAttr *Create(ASTContext &Ctx, VisibilityType Visibility, const AttributeCommonInfo &CommonInfo = {SourceRange{}}) {
14905     auto *A = new (Ctx) VisibilityAttr(Ctx, CommonInfo, Visibility);
14905     auto *A = new (Ctx) VisibilityAttr(Ctx, CommonInfo, Visibility);
14911   static VisibilityAttr *CreateImplicit(ASTContext &Ctx, VisibilityType Visibility, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
14915   static VisibilityAttr *Create(ASTContext &Ctx, VisibilityType Visibility, SourceRange Range, AttributeCommonInfo::Syntax Syntax) {
14927   VisibilityAttr *clone(ASTContext &C) const;
14937       .Case("default", VisibilityAttr::Default)
14938       .Case("hidden", VisibilityAttr::Hidden)
14939       .Case("internal", VisibilityAttr::Hidden)
14940       .Case("protected", VisibilityAttr::Protected)
14951     case VisibilityAttr::Default: return "default";
14952     case VisibilityAttr::Hidden: return "hidden";
14953     case VisibilityAttr::Protected: return "protected";
gen/tools/clang/include/clang/Serialization/AttrPCHRead.inc
 2430     VisibilityAttr::VisibilityType visibility(static_cast<VisibilityAttr::VisibilityType>(Record.readInt()));
 2431     New = new (Context) VisibilityAttr(Context, Info, visibility);
gen/tools/clang/include/clang/Serialization/AttrPCHWrite.inc
 1819     const auto *SA = cast<VisibilityAttr>(A);
 1819     const auto *SA = cast<VisibilityAttr>(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*,
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
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>
  113   return specific_attr_begin<SpecificAttr>(container) !=
  114           specific_attr_end<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
  517     Vec.erase(std::remove_if(Vec.begin(), Vec.end(), isa<T, Attr*>), Vec.end());
  538   template<typename T> T *getAttr() const {
  539     return hasAttrs() ? getSpecificAttr<T>(getAttrs()) : nullptr;
  543     return hasAttrs() && hasSpecificAttr<T>(getAttrs());
tools/clang/include/clang/Sema/Sema.h
 2794   VisibilityAttr *mergeVisibilityAttr(Decl *D, const AttributeCommonInfo &CI,
 2795                                       VisibilityAttr::VisibilityType Vis);
 9049   void PushNamespaceVisibilityAttr(const VisibilityAttr *Attr,
tools/clang/lib/AST/Decl.cpp
  207 static Visibility getVisibilityFromAttr(const T *attr) {
  209   case T::Default:
  211   case T::Hidden:
  213   case T::Protected:
  231   if (const auto *A = D->getAttr<VisibilityAttr>()) {
  231   if (const auto *A = D->getAttr<VisibilityAttr>()) {
  376   return !fn->hasAttr<VisibilityAttr>();
  413          D->hasAttr<VisibilityAttr>();
tools/clang/lib/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/Sema/SemaAttr.cpp
  892   VisibilityAttr::VisibilityType type
  896   D->addAttr(VisibilityAttr::CreateImplicit(Context, type, loc));
  918     VisibilityAttr::VisibilityType T;
  919     if (!VisibilityAttr::ConvertStrToVisibilityType(VisType->getName(), T)) {
  955 void Sema::PushNamespaceVisibilityAttr(const VisibilityAttr *Attr,
tools/clang/lib/Sema/SemaDecl.cpp
 2535   else if (const auto *VA = dyn_cast<VisibilityAttr>(Attr))
 2535   else if (const auto *VA = dyn_cast<VisibilityAttr>(Attr))
tools/clang/lib/Sema/SemaDeclAttr.cpp
 2477 static T *mergeVisibilityAttr(Sema &S, Decl *D, const AttributeCommonInfo &CI,
 2478                               typename T::VisibilityType value) {
 2479   T *existingAttr = D->getAttr<T>();
 2479   T *existingAttr = D->getAttr<T>();
 2481     typename T::VisibilityType existingValue = existingAttr->getVisibility();
 2486     D->dropAttr<T>();
 2488   return ::new (S.Context) T(S.Context, CI, value);
 2491 VisibilityAttr *Sema::mergeVisibilityAttr(Decl *D,
 2493                                           VisibilityAttr::VisibilityType Vis) {
 2494   return ::mergeVisibilityAttr<VisibilityAttr>(*this, D, CI, Vis);
 2527   VisibilityAttr::VisibilityType type;
 2528   if (!VisibilityAttr::ConvertStrToVisibilityType(TypeStr, type)) {
 2536   if (type == VisibilityAttr::Protected &&
 2539     type = VisibilityAttr::Default;
tools/clang/lib/Sema/SemaDeclCXX.cpp
 9387   if (const VisibilityAttr *Attr = Namespc->getAttr<VisibilityAttr>())
 9387   if (const VisibilityAttr *Attr = Namespc->getAttr<VisibilityAttr>())
 9463   if (Namespc->hasAttr<VisibilityAttr>())
tools/clang/lib/Sema/SemaExprCXX.cpp
 2823     Alloc->addAttr(VisibilityAttr::CreateImplicit(
 2825                      ? VisibilityAttr::Hidden
 2826                      : VisibilityAttr::Default));
tools/clang/tools/libclang/CIndex.cpp
 4633     const VisibilityAttr *AA = cast<VisibilityAttr>(cxcursor::getCursorAttr(C));
 4633     const VisibilityAttr *AA = cast<VisibilityAttr>(cxcursor::getCursorAttr(C));
 4635     case VisibilityAttr::VisibilityType::Default:
 4637     case VisibilityAttr::VisibilityType::Hidden:
 4639     case VisibilityAttr::VisibilityType::Protected:
usr/include/c++/7.4.0/type_traits
 1558     { typedef _Tp     type; };
 1580     { typedef _Tp const     type; };