Home | History | Annotate | Download | only in Basic

Lines Matching refs:Visibility

1 //===--- Visibility.h - Visibility enumeration and utilities ----*- C++ -*-===//
11 /// \brief Defines the clang::Visibility enumeration and various utility
22 /// \brief Describes the different kinds of visibility that a declaration
25 /// Visibility determines how a declaration interacts with the dynamic
29 /// Visibility is not described in any language standard and
31 /// support all visibility kinds.
32 enum Visibility {
33 /// Objects with "hidden" visibility are not seen by the dynamic
37 /// Objects with "protected" visibility are seen by the dynamic
42 /// Objects with "default" visibility are seen by the dynamic linker
47 inline Visibility minVisibility(Visibility L, Visibility R) {
56 void setVisibility(Visibility V, bool E) { visibility_ = V; explicit_ = E; }
60 LinkageInfo(Linkage L, Visibility V, bool E)
80 Visibility getVisibility() const { return (Visibility)visibility_; }
106 /// Merge in the visibility 'newVis'.
107 void mergeVisibility(Visibility newVis, bool newExplicit) {
108 Visibility oldVis = getVisibility();
110 // Never increase visibility.
114 // If the new visibility is the same as the old and the new
115 // visibility isn't explicit, we have nothing to add.
119 // Otherwise, we're either decreasing visibility or making our
120 // existing visibility explicit.
127 /// Merge both linkage and visibility.
133 /// Merge linkage and conditionally merge visibility.