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

References

include/llvm/ADT/ArrayRef.h
   43     using iterator = const T *;
   44     using const_iterator = const T *;
   50     const T *Data = nullptr;
   66     /*implicit*/ ArrayRef(const T &OneElt)
   70     /*implicit*/ ArrayRef(const T *data, size_t length)
   74     ArrayRef(const T *begin, const T *end)
   74     ArrayRef(const T *begin, const T *end)
   81     /*implicit*/ ArrayRef(const SmallVectorTemplateCommon<T, U> &Vec)
   87     /*implicit*/ ArrayRef(const std::vector<T, A> &Vec)
   92     /*implicit*/ constexpr ArrayRef(const std::array<T, N> &Arr)
   97     /*implicit*/ constexpr ArrayRef(const T (&Arr)[N]) : Data(Arr), Length(N) {}
  100     /*implicit*/ ArrayRef(const std::initializer_list<T> &Vec)
  145     const T *data() const { return Data; }
  151     const T &front() const {
  157     const T &back() const {
  163     template <typename Allocator> ArrayRef<T> copy(Allocator &A) {
  178     ArrayRef<T> slice(size_t N, size_t M) const {
  184     ArrayRef<T> slice(size_t N) const { return slice(N, size() - N); }
  187     ArrayRef<T> drop_front(size_t N = 1) const {
  193     ArrayRef<T> drop_back(size_t N = 1) const {
  200     template <class PredicateT> ArrayRef<T> drop_while(PredicateT Pred) const {
  206     template <class PredicateT> ArrayRef<T> drop_until(PredicateT Pred) const {
  211     ArrayRef<T> take_front(size_t N = 1) const {
  218     ArrayRef<T> take_back(size_t N = 1) const {
  226     template <class PredicateT> ArrayRef<T> take_while(PredicateT Pred) const {
  232     template <class PredicateT> ArrayRef<T> take_until(PredicateT Pred) const {
  239     const T &operator[](size_t Index) const {
  249     typename std::enable_if<std::is_same<U, T>::value, ArrayRef<T>>::type &
  257     typename std::enable_if<std::is_same<U, T>::value, ArrayRef<T>>::type &
  263     std::vector<T> vec() const {
  270     operator std::vector<T>() const {
  468   ArrayRef<T> makeArrayRef(const SmallVectorImpl<T> &Vec) {
  468   ArrayRef<T> makeArrayRef(const SmallVectorImpl<T> &Vec) {
  474   ArrayRef<T> makeArrayRef(const SmallVector<T, N> &Vec) {
  474   ArrayRef<T> makeArrayRef(const SmallVector<T, N> &Vec) {
include/llvm/ADT/DenseMap.h
   40 struct DenseMapPair : public std::pair<KeyT, ValueT> {
   43   KeyT &getFirst() { return std::pair<KeyT, ValueT>::first; }
   44   const KeyT &getFirst() const { return std::pair<KeyT, ValueT>::first; }
   65   using key_type = KeyT;
   69   using iterator = DenseMapIterator<KeyT, ValueT, KeyInfoT, BucketT>;
   71       DenseMapIterator<KeyT, ValueT, KeyInfoT, BucketT, true>;
   78     if (shouldReverseIterate<KeyT>())
  145   size_type count(const_arg_type_t<KeyT> Val) const {
  272   bool erase(const KeyT &Val) {
  334     const KeyT EmptyKey = getEmptyKey(), TombstoneKey = getTombstoneKey();
  349     const KeyT EmptyKey = getEmptyKey();
  351       ::new (&B->getFirst()) KeyT(EmptyKey);
  369     const KeyT EmptyKey = getEmptyKey();
  370     const KeyT TombstoneKey = getTombstoneKey();
  392       const DenseMapBase<OtherBaseT, KeyT, ValueT, KeyInfoT, BucketT> &other) {
  414   static unsigned getHashValue(const KeyT &Val) {
  419   static unsigned getHashValue(const LookupKeyT &Val) {
  423   static const KeyT getEmptyKey() {
  429   static const KeyT getTombstoneKey() {
  437     if (shouldReverseIterate<KeyT>()) {
  447     if (shouldReverseIterate<KeyT>()) {
  566     const KeyT EmptyKey = getEmptyKey();
  578   bool LookupBucketFor(const LookupKeyT &Val,
  590     const KeyT EmptyKey = getEmptyKey();
  591     const KeyT TombstoneKey = getTombstoneKey();
  629   bool LookupBucketFor(const LookupKeyT &Val, BucketT *&FoundBucket) {
  684 class DenseMap : public DenseMapBase<DenseMap<KeyT, ValueT, KeyInfoT, BucketT>,
 1163   using ConstIterator = DenseMapIterator<KeyT, ValueT, KeyInfoT, Bucket, true>;
 1186     if (shouldReverseIterate<KeyT>()) {
 1199       const DenseMapIterator<KeyT, ValueT, KeyInfoT, Bucket, IsConstSrc> &I)
 1204     if (shouldReverseIterate<KeyT>())
 1210     if (shouldReverseIterate<KeyT>())
 1232     if (shouldReverseIterate<KeyT>()) {
 1249     const KeyT Empty = KeyInfoT::getEmptyKey();
 1250     const KeyT Tombstone = KeyInfoT::getTombstoneKey();
 1259     const KeyT Empty = KeyInfoT::getEmptyKey();
 1260     const KeyT Tombstone = KeyInfoT::getTombstoneKey();
include/llvm/ADT/Optional.h
  144     T value;
  172   T &getValue() LLVM_LVALUE_FUNCTION noexcept {
  176   T const &getValue() const LLVM_LVALUE_FUNCTION noexcept {
  181   T &&getValue() && noexcept {
  197       ::new ((void *)std::addressof(value)) T(y);
  216   optional_detail::OptionalStorage<T> Storage;
  219   using value_type = T;
  224   Optional(const T &y) : Storage(optional_detail::in_place_t{}, y) {}
  227   Optional(T &&y) : Storage(optional_detail::in_place_t{}, std::move(y)) {}
  230   Optional &operator=(T &&y) {
  241   static inline Optional create(const T *y) {
  245   Optional &operator=(const T &y) {
  253   const T *getPointer() const { return &Storage.getValue(); }
  254   T *getPointer() { return &Storage.getValue(); }
  255   const T &getValue() const LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
  256   T &getValue() LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
  260   const T *operator->() const { return getPointer(); }
  261   T *operator->() { return getPointer(); }
  262   const T &operator*() const LLVM_LVALUE_FUNCTION { return getValue(); }
  263   T &operator*() LLVM_LVALUE_FUNCTION { return getValue(); }
  266   constexpr T getValueOr(U &&value) const LLVM_LVALUE_FUNCTION {
  271   T &&getValue() && { return std::move(Storage.getValue()); }
  272   T &&operator*() && { return std::move(Storage.getValue()); }
  275   T getValueOr(U &&value) && {
include/llvm/ADT/SmallVector.h
   75   AlignedCharArrayUnion<T> FirstEl;
  114   using value_type = T;
  115   using iterator = T *;
  116   using const_iterator = const T *;
  121   using reference = T &;
  122   using const_reference = const T &;
  123   using pointer = T *;
  124   using const_pointer = const T *;
  259 class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
  264   static void destroy_range(T *, T *) {}
  264   static void destroy_range(T *, T *) {}
  286       T1 *I, T1 *E, T2 *Dest,
  288                                            T2>::value>::type * = nullptr) {
  294       memcpy(reinterpret_cast<void *>(Dest), I, (E - I) * sizeof(T));
  299   void grow(size_t MinSize = 0) { this->grow_pod(MinSize, sizeof(T)); }
  302   void push_back(const T &Elt) {
  305     memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T));
  315 class SmallVectorImpl : public SmallVectorTemplateBase<T> {
  316   using SuperClass = SmallVectorTemplateBase<T>;
  357   void resize(size_type N, const T &NV) {
  374   LLVM_NODISCARD T pop_back_val() {
  397   void append(size_type NumInputs, const T &Elt) {
  405   void append(std::initializer_list<T> IL) {
  412   void assign(size_type NumElts, const T &Elt) {
  429   void assign(std::initializer_list<T> IL) {
  467   iterator insert(iterator I, T &&Elt) {
  497   iterator insert(iterator I, const T &Elt) {
  526   iterator insert(iterator I, size_type NumToInsert, const T &Elt) {
  637   void insert(iterator I, std::initializer_list<T> IL) {
  820   AlignedCharArrayUnion<T> InlineElts[N];
  837 class SmallVector : public SmallVectorImpl<T>, SmallVectorStorage<T, N> {
  837 class SmallVector : public SmallVectorImpl<T>, SmallVectorStorage<T, N> {
  846   explicit SmallVector(size_t Size, const T &Value = T())
  865   SmallVector(std::initializer_list<T> IL) : SmallVectorImpl<T>(N) {
  884   SmallVector(SmallVectorImpl<T> &&RHS) : SmallVectorImpl<T>(N) {
include/llvm/Support/AlignOf.h
   24   T t;
   30   T t;
   35   char arr[sizeof(T)];
   39 template <typename T> union SizerImpl<T> { char arr[sizeof(T)]; };
   50       llvm::detail::SizerImpl<T, Ts...>)];
include/llvm/Support/Error.h
  437   static const bool isRef = std::is_reference<T>::value;
  439   using wrap = std::reference_wrapper<typename std::remove_reference<T>::type>;
  444   using storage_type = typename std::conditional<isRef, wrap, T>::type;
  445   using value_type = T;
  448   using reference = typename std::remove_reference<T>::type &;
  449   using const_reference = const typename std::remove_reference<T>::type &;
  450   using pointer = typename std::remove_reference<T>::type *;
  451   using const_pointer = const typename std::remove_reference<T>::type *;
  474   Expected(OtherT &&Val,
  475            typename std::enable_if<std::is_convertible<OtherT, T>::value>::type
  492   Expected(Expected<OtherT> &&Other,
  493            typename std::enable_if<std::is_convertible<OtherT, T>::value>::type
  493            typename std::enable_if<std::is_convertible<OtherT, T>::value>::type
  594   template <class OtherT> void moveConstruct(Expected<OtherT> &&Other) {
include/llvm/Support/PointerLikeTypeTraits.h
   56   static inline void *getAsVoidPointer(T *P) { return P; }
   57   static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); }
   59   enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value };
include/llvm/Support/type_traits.h
   65   using type = const T &;
   91     T t;
  122     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
  122     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
  122     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
  130     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
  130     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
  130     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
  145       std::is_copy_constructible<detail::trivial_helper<T>>::value;
  147       !std::is_copy_constructible<T>::value;
  151       std::is_move_constructible<detail::trivial_helper<T>>::value;
  153       !std::is_move_constructible<T>::value;
  157       is_copy_assignable<detail::trivial_helper<T>>::value;
  159       !is_copy_assignable<T>::value;
  163       is_move_assignable<detail::trivial_helper<T>>::value;
  165       !is_move_assignable<T>::value;
  169       std::is_destructible<detail::trivial_helper<T>>::value;
tools/clang/include/clang/AST/ASTContext.h
  592     using DynTypedNode = ast_type_traits::DynTypedNode;
  594     llvm::AlignedCharArrayUnion<ast_type_traits::DynTypedNode,
  607     const ast_type_traits::DynTypedNode *begin() const {
  614     const ast_type_traits::DynTypedNode *end() const {
  664   template <typename NodeT> DynTypedNodeList getParents(const NodeT &Node) {
  665     return getParents(ast_type_traits::DynTypedNode::create(Node));
  668   DynTypedNodeList getParents(const ast_type_traits::DynTypedNode &Node);
tools/clang/include/clang/AST/ASTNodeTraverser.h
  208   void Visit(const ast_type_traits::DynTypedNode &N) {
tools/clang/include/clang/AST/ASTTypeTraits.h
  234   static DynTypedNode create(const T &Node) {
  292   bool operator<(const DynTypedNode &Other) const {
  322   bool operator==(const DynTypedNode &Other) const {
  342   bool operator!=(const DynTypedNode &Other) const {
  349     static inline DynTypedNode getEmptyKey() {
  350       DynTypedNode Node;
  354     static inline DynTypedNode getTombstoneKey() {
  355       DynTypedNode Node;
  359     static unsigned getHashValue(const DynTypedNode &Val) {
  377     static bool isEqual(const DynTypedNode &LHS, const DynTypedNode &RHS) {
  377     static bool isEqual(const DynTypedNode &LHS, const DynTypedNode &RHS) {
  404     static DynTypedNode create(const BaseT &Node) {
  405       DynTypedNode Result;
  424     static DynTypedNode create(const T &Node) {
  425       DynTypedNode Result;
  443     static DynTypedNode create(const T &Node) {
  444       DynTypedNode Result;
  536     : clang::ast_type_traits::DynTypedNode::DenseMapInfo {};
tools/clang/include/clang/ASTMatchers/ASTMatchFinder.h
  184   template <typename T> void match(const T &Node, ASTContext &Context) {
  185     match(clang::ast_type_traits::DynTypedNode::create(Node), Context);
  187   void match(const clang::ast_type_traits::DynTypedNode &Node,
  299   return match(Matcher, ast_type_traits::DynTypedNode::create(Node), Context);
tools/clang/include/clang/ASTMatchers/ASTMatchers.h
 4349   Predicate.Node = ast_type_traits::DynTypedNode::create(Node);
 6469   llvm::SmallVector<ast_type_traits::DynTypedNode, 8> Stack(Parents.begin(),
 6472     const auto &CurNode = Stack.back();
 6484       for(const auto &Parent: Finder->getASTContext().getParents(CurNode))
tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h
  151   void addNode(StringRef ID, const ast_type_traits::DynTypedNode& DynNode) {
  168   ast_type_traits::DynTypedNode getNode(StringRef ID) const {
  187       std::map<std::string, ast_type_traits::DynTypedNode, std::less<>>;
  226   void setBinding(StringRef Id, const ast_type_traits::DynTypedNode &DynNode) {
  283   virtual bool dynMatches(const ast_type_traits::DynTypedNode &DynNode,
  306   bool dynMatches(const ast_type_traits::DynTypedNode &DynNode,
  391   bool matches(const ast_type_traits::DynTypedNode &DynNode,
  398   bool matchesNoKindCheck(const ast_type_traits::DynTypedNode &DynNode,
  537     return Implementation.matches(ast_type_traits::DynTypedNode::create(Node),
  569           ast_type_traits::DynTypedNode::create(*Node), Finder, Builder);
  913                ast_type_traits::DynTypedNode::create(*Node), Finder, Builder);
  994   bool matchesChildOf(const T &Node, const DynTypedMatcher &Matcher,
 1004     return matchesChildOf(ast_type_traits::DynTypedNode::create(Node),
 1009   bool matchesDescendantOf(const T &Node,
 1020     return matchesDescendantOf(ast_type_traits::DynTypedNode::create(Node),
 1026   bool matchesAncestorOf(const T &Node,
 1035     return matchesAncestorOf(ast_type_traits::DynTypedNode::create(Node),
 1042   virtual bool matchesChildOf(const ast_type_traits::DynTypedNode &Node,
 1048   virtual bool matchesDescendantOf(const ast_type_traits::DynTypedNode &Node,
 1053   virtual bool matchesAncestorOf(const ast_type_traits::DynTypedNode &Node,
 1597   static ast_type_traits::DynTypedNode
 1599     return ast_type_traits::DynTypedNode::create(*Loc.getNestedNameSpecifier());
 1617         ast_type_traits::DynTypedNode::create(Node.getType()), Finder, Builder);
 1638         ast_type_traits::DynTypedNode::create(NextNode), Finder, Builder);
 1662         ast_type_traits::DynTypedNode::create(NextNode), Finder, Builder);
 1762   ast_type_traits::DynTypedNode Node;
tools/clang/include/clang/Tooling/ASTDiff/ASTDiff.h
   40   ast_type_traits::DynTypedNode ASTNode;
tools/clang/include/clang/Tooling/ASTDiff/ASTDiffInternal.h
   18 using DynTypedNode = ast_type_traits::DynTypedNode;
tools/clang/include/clang/Tooling/Refactoring/ASTSelection.h
   50   ast_type_traits::DynTypedNode Node;
   54   SelectedASTNode(const ast_type_traits::DynTypedNode &Node,
tools/clang/include/clang/Tooling/Transformer/SourceCode.h
   32 CharSourceRange getExtendedRange(const T &Node, tok::TokenKind Next,
tools/clang/lib/AST/ASTContext.cpp
  891   using ParentVector = llvm::SmallVector<ast_type_traits::DynTypedNode, 2>;
  899                           ast_type_traits::DynTypedNode *, ParentVector *>>;
  904       ast_type_traits::DynTypedNode,
  906                           ast_type_traits::DynTypedNode *, ParentVector *>>;
  912   static ast_type_traits::DynTypedNode
  915       return ast_type_traits::DynTypedNode::create(*D);
  917       return ast_type_traits::DynTypedNode::create(*S);
  918     return *U.get<ast_type_traits::DynTypedNode *>();
  922   static ASTContext::DynTypedNodeList getDynNodeFromMap(const NodeTy &Node,
  938       if (Entry.second.is<ast_type_traits::DynTypedNode *>()) {
  939         delete Entry.second.get<ast_type_traits::DynTypedNode *>();
  945       if (Entry.second.is<ast_type_traits::DynTypedNode *>()) {
  946         delete Entry.second.get<ast_type_traits::DynTypedNode *>();
  953   DynTypedNodeList getParents(const ast_type_traits::DynTypedNode &Node) {
10388 static ast_type_traits::DynTypedNode createDynTypedNode(const T &Node) {
10389   return ast_type_traits::DynTypedNode::create(*Node);
10392 ast_type_traits::DynTypedNode createDynTypedNode(const TypeLoc &Node) {
10393   return ast_type_traits::DynTypedNode::create(Node);
10396 ast_type_traits::DynTypedNode
10398   return ast_type_traits::DynTypedNode::create(Node);
10426   bool TraverseNode(T Node, MapNodeTy MapNode, BaseTraverseFn BaseTraverse,
10448           NodeOrVector = new ast_type_traits::DynTypedNode(ParentStack.back());
10454               .template dyn_cast<ast_type_traits::DynTypedNode *>();
10490         TypeLocNode, ast_type_traits::DynTypedNode::create(TypeLocNode),
10497         NNSLocNode, ast_type_traits::DynTypedNode::create(NNSLocNode),
10503   llvm::SmallVector<ast_type_traits::DynTypedNode, 16> ParentStack;
10511 ASTContext::getParents(const ast_type_traits::DynTypedNode &Node) {
tools/clang/lib/ASTMatchers/ASTMatchFinder.cpp
   60   ast_type_traits::DynTypedNode Node;
  104   bool findMatch(const ast_type_traits::DynTypedNode &DynNode) {
  260       if (Matcher->matches(ast_type_traits::DynTypedNode::create(Node), Finder,
  268       if (Matcher->matches(ast_type_traits::DynTypedNode::create(Node), Finder,
  392   bool memoizedMatchesRecursively(const ast_type_traits::DynTypedNode &Node,
  427   bool matchesRecursively(const ast_type_traits::DynTypedNode &Node,
  448   bool matchesChildOf(const ast_type_traits::DynTypedNode &Node,
  459   bool matchesDescendantOf(const ast_type_traits::DynTypedNode &Node,
  470   bool matchesAncestorOf(const ast_type_traits::DynTypedNode &Node,
  484   void match(const ast_type_traits::DynTypedNode &Node) {
  505   template <typename T> void match(const T &Node) {
  562   void matchWithFilter(const ast_type_traits::DynTypedNode &DynNode) {
  602     return matchWithFilter(ast_type_traits::DynTypedNode::create(*Node));
  605     return matchWithFilter(ast_type_traits::DynTypedNode::create(*Node));
  643       const ast_type_traits::DynTypedNode &Node, const DynTypedMatcher &Matcher,
  674   bool matchesAncestorOfRecursively(const ast_type_traits::DynTypedNode &Node,
  701       const ast_type_traits::DynTypedNode Parent = Parents[0];
  716       std::deque<ast_type_traits::DynTypedNode> Queue(Parents.begin(),
  725           for (const auto &Parent :
 1084 void MatchFinder::match(const clang::ast_type_traits::DynTypedNode &Node,
tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp
   52 bool NotUnaryOperator(const ast_type_traits::DynTypedNode &DynNode,
   56 bool AllOfVariadicOperator(const ast_type_traits::DynTypedNode &DynNode,
   61 bool EachOfVariadicOperator(const ast_type_traits::DynTypedNode &DynNode,
   66 bool AnyOfVariadicOperator(const ast_type_traits::DynTypedNode &DynNode,
   82     const ast_type_traits::DynTypedNode &DynNode, ASTMatchFinder *Finder,
   91   bool dynMatches(const ast_type_traits::DynTypedNode &DynNode,
  107   bool dynMatches(const ast_type_traits::DynTypedNode &DynNode,
  131   bool dynMatches(const ast_type_traits::DynTypedNode &, ASTMatchFinder *,
  211 bool DynTypedMatcher::matches(const ast_type_traits::DynTypedNode &DynNode,
  226     const ast_type_traits::DynTypedNode &DynNode, ASTMatchFinder *Finder,
  262 bool NotUnaryOperator(const ast_type_traits::DynTypedNode &DynNode,
  282 bool AllOfVariadicOperator(const ast_type_traits::DynTypedNode &DynNode,
  296 bool EachOfVariadicOperator(const ast_type_traits::DynTypedNode &DynNode,
  313 bool AnyOfVariadicOperator(const ast_type_traits::DynTypedNode &DynNode,
tools/clang/lib/Tooling/ASTDiff/ASTDiff.cpp
  389     const auto &P = Parents[0];
tools/clang/lib/Tooling/Refactoring/ASTSelection.cpp
   50         SelectedASTNode(DynTypedNode::create(*Context.getTranslationUnitDecl()),
   98         SelectedASTNode(DynTypedNode::create(*D), SelectionKind));
  126         SelectedASTNode(DynTypedNode::create(*S), SelectionKind));
  425     const DynTypedNode &Node = Parent.get().Node;
  443     const DynTypedNode &Node = Parent.get().Node;
tools/clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp
  430                   ast_type_traits::DynTypedNode::create(TargetLoc)),
  464   const Decl *getClosestAncestorDecl(const ASTNodeType &Node) {
tools/clang/lib/Tooling/Transformer/RangeSelector.cpp
   55 static Expected<DynTypedNode> getNode(const ast_matchers::BoundNodes &Nodes,
  131     Expected<DynTypedNode> Node = getNode(Result.Nodes, ID);
  143     Expected<DynTypedNode> Node = getNode(Result.Nodes, ID);
  176     Expected<DynTypedNode> Node = getNode(Result.Nodes, ID);
  188     Expected<DynTypedNode> N = getNode(Result.Nodes, ID);
  191     auto &Node = *N;
  238     Expected<DynTypedNode> N = getNode(Result.Nodes, ID);
tools/clang/lib/Tooling/Transformer/Stencil.cpp
   34 static llvm::Expected<DynTypedNode>
tools/clang/tools/extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
  262       for (const auto &Node : Ctx->getParents(*E)) {
tools/clang/tools/extra/clang-tidy/modernize/UseNullptrCheck.cpp
  278     ast_type_traits::DynTypedNode ContainingAncestor;
  280             ast_type_traits::DynTypedNode::create<Stmt>(*CE), MacroLoc,
  408   bool findContainingAncestor(ast_type_traits::DynTypedNode Start,
  410                               ast_type_traits::DynTypedNode &Result) {
  426         for (const auto &Parent : Parents) {
  432       const ast_type_traits::DynTypedNode &Parent = Parents[0];
tools/clang/tools/extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
  225     for (const auto &N : Context.getParents(*Q.front())) {
tools/clang/tools/extra/clang-tidy/readability/MagicNumbersCheck.cpp
   27                                  const DynTypedNode &Node) {
tools/clang/tools/extra/clang-tidy/readability/RedundantDeclarationCheck.cpp
   53   for (const auto &Parent : Result.Context->getParents(*Prev))
tools/clang/tools/extra/clang-tidy/utils/ExprSequence.cpp
   33   SmallVector<ast_type_traits::DynTypedNode, 1> NodesToProcess(Parents.begin(),
   37     ast_type_traits::DynTypedNode Node = NodesToProcess.back();
tools/clang/tools/extra/clangd/FindTarget.cpp
   44 nodeToString(const ast_type_traits::DynTypedNode &N) {
  432                        explicitReferenceTargets(DynTypedNode::create(*D),
  540           explicitReferenceTargets(DynTypedNode::create(L.getType()),
  547           explicitReferenceTargets(DynTypedNode::create(L.getType()),
  555           explicitReferenceTargets(DynTypedNode::create(L.getType()))};
  561           explicitReferenceTargets(DynTypedNode::create(L.getType()))};
  590     visitNode(DynTypedNode::create(TTL));
  603     visitNode(DynTypedNode::create(*E));
  620                       DynTypedNode::create(A.getArgument()));
  637     visitNode(DynTypedNode::create(*D));
  645     visitNode(DynTypedNode::create(L));
  653     visitNode(DynTypedNode::create(*Init));
  679                            explicitReferenceTargets(DynTypedNode::create(
  697   void visitNode(DynTypedNode N) {
  702   void reportReference(const ReferenceLoc &Ref, DynTypedNode N) {
tools/clang/tools/extra/clangd/FindTarget.h
   79 targetDecl(const ast_type_traits::DynTypedNode &, DeclRelationSet Mask);
  116 allTargetDecls(const ast_type_traits::DynTypedNode &);
tools/clang/tools/extra/clangd/Selection.cpp
  125 void printNodeKind(llvm::raw_ostream &OS, const DynTypedNode &N) {
  139 std::string printNodeToString(const DynTypedNode &N, const PrintingPolicy &PP) {
  220     auto N = DynTypedNode::create(*X);
  220     auto N = DynTypedNode::create(*X);
  270     Nodes.back().ASTNode = DynTypedNode::create(*AST.getTranslationUnitDecl());
  282     auto N = DynTypedNode::create(*Node);
  282     auto N = DynTypedNode::create(*Node);
  285     push(DynTypedNode::create(*Node));
  318   bool canSafelySkipNode(const DynTypedNode &N) {
  336   void push(DynTypedNode Node) {
  369   SourceRange earlySourceRange(const DynTypedNode &N) {
tools/clang/tools/extra/clangd/Selection.h
  101     ast_type_traits::DynTypedNode ASTNode;
tools/clang/tools/extra/clangd/refactor/tweaks/DefineInline.cpp
   86   const ast_type_traits::DynTypedNode &AstNode = SelNode->ASTNode;
tools/clang/tools/extra/clangd/refactor/tweaks/DumpAST.cpp
   50   static bool dumpable(const ast_type_traits::DynTypedNode &N) {
   56   llvm::Optional<ast_type_traits::DynTypedNode> Node;
tools/clang/unittests/AST/ASTTraverserTest.cpp
   75 template <typename... NodeType> std::string dumpASTString(NodeType &&... N) {
   83   Dumper.Visit(std::forward<NodeType &&>(N)...);
tools/clang/unittests/AST/ASTTypeTraitsTest.cpp
  127   RangeVerifier<DynTypedNode> Verifier;
  133   RangeVerifier<DynTypedNode> Verifier;
  139   RangeVerifier<DynTypedNode> Verifier;
  145   RangeVerifier<DynTypedNode> Verifier;
  177   DynTypedNode Node = DynTypedNode::create(Q);
  177   DynTypedNode Node = DynTypedNode::create(Q);
tools/clang/unittests/AST/MatchVerifier.h
   62                       const NodeType &Node) {}
  216 class RangeVerifier : public MatchVerifier<NodeType> {
  228               const NodeType &Node) override {
  250   virtual SourceRange getRange(const NodeType &Node) {
  259 class DumpVerifier : public MatchVerifier<ast_type_traits::DynTypedNode> {
  267               const ast_type_traits::DynTypedNode &Node) override {
  286 class PrintVerifier : public MatchVerifier<ast_type_traits::DynTypedNode> {
  294               const ast_type_traits::DynTypedNode &Node) override {
tools/clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
 2292       for (const auto &Parent : Context->getParents(*Node)) {
usr/include/c++/7.4.0/bits/alloc_traits.h
  387       using allocator_type = allocator<_Tp>;
  389       using value_type = _Tp;
  392       using pointer = _Tp*;
  395       using const_pointer = const _Tp*;
  474 	construct(allocator_type& __a, _Up* __p, _Args&&... __args)
  474 	construct(allocator_type& __a, _Up* __p, _Args&&... __args)
  486 	destroy(allocator_type& __a, _Up* __p)
usr/include/c++/7.4.0/bits/allocator.h
  108     class allocator: public __allocator_base<_Tp>
  113       typedef _Tp*       pointer;
  114       typedef const _Tp* const_pointer;
  115       typedef _Tp&       reference;
  116       typedef const _Tp& const_reference;
  117       typedef _Tp        value_type;
  137 	allocator(const allocator<_Tp1>&) throw() { }
usr/include/c++/7.4.0/bits/move.h
   46     inline _GLIBCXX_CONSTEXPR _Tp*
   47     __addressof(_Tp& __r) _GLIBCXX_NOEXCEPT
   72     constexpr _Tp&&
   83     constexpr _Tp&&
   98     move(_Tp&& __t) noexcept
  136     inline _GLIBCXX17_CONSTEXPR _Tp*
  137     addressof(_Tp& __r) noexcept
  143     const _Tp* addressof(const _Tp&&) = delete;
  143     const _Tp* addressof(const _Tp&&) = delete;
usr/include/c++/7.4.0/bits/ptr_traits.h
  126       typedef _Tp* pointer;
  128       typedef _Tp  element_type;
  141       pointer_to(__make_not_void<element_type>& __r) noexcept
  141       pointer_to(__make_not_void<element_type>& __r) noexcept
usr/include/c++/7.4.0/bits/stl_algo.h
 3900 	 const _Tp& __val)
usr/include/c++/7.4.0/bits/stl_construct.h
   74     _Construct(_T1* __p, _Args&&... __args)
   74     _Construct(_T1* __p, _Args&&... __args)
   75     { ::new(static_cast<void*>(__p)) _T1(std::forward<_Args>(__args)...); }
  204 	     allocator<_Tp>&)
usr/include/c++/7.4.0/bits/stl_deque.h
  120 	using __iter = _Deque_iterator<_Tp, _CvTp&, __ptr_to<_CvTp>>;
  122       typedef __iter<_Tp>		iterator;
  123       typedef __iter<const _Tp>		const_iterator;
  124       typedef __ptr_to<_Tp>		_Elt_pointer;
  129       { return __deque_buf_size(sizeof(_Tp)); }
  132       typedef _Tp				value_type;
  267     operator==(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
  268 	       const _Deque_iterator<_Tp, _Ref, _Ptr>& __y) _GLIBCXX_NOEXCEPT
  274     operator==(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
  275 	       const _Deque_iterator<_Tp, _RefR, _PtrR>& __y) _GLIBCXX_NOEXCEPT
  464 	rebind<_Tp>::other _Tp_alloc_type;
  487       typedef _Deque_iterator<_Tp, _Tp&, _Ptr>	  iterator;
  487       typedef _Deque_iterator<_Tp, _Tp&, _Ptr>	  iterator;
  488       typedef _Deque_iterator<_Tp, const _Tp&, _Ptr_const>   const_iterator;
  488       typedef _Deque_iterator<_Tp, const _Tp&, _Ptr_const>   const_iterator;
  602 	return _Traits::allocate(_M_impl, __deque_buf_size(sizeof(_Tp)));
  609 	_Traits::deallocate(_M_impl, __p, __deque_buf_size(sizeof(_Tp)));
  684       const size_t __num_nodes = (__num_elements/ __deque_buf_size(sizeof(_Tp))
  715 					% __deque_buf_size(sizeof(_Tp)));
  831     class deque : protected _Deque_base<_Tp, _Alloc>
  842       typedef _Deque_base<_Tp, _Alloc>			_Base;
  848       typedef _Tp					value_type;
  863       { return __deque_buf_size(sizeof(_Tp)); }
 1980 	void _M_push_back_aux(_Args&&... __args);
 2069 		      const std::allocator<_Tp>&)
usr/include/c++/7.4.0/bits/stl_iterator_base_types.h
  181       typedef _Tp                         value_type;
  183       typedef _Tp*                        pointer;
  184       typedef _Tp&                        reference;
  192       typedef _Tp                         value_type;
  194       typedef const _Tp*                  pointer;
  195       typedef const _Tp&                  reference;
usr/include/c++/7.4.0/bits/stl_map.h
  103       typedef _Tp					mapped_type;
  104       typedef std::pair<const _Key, _Tp>		value_type;
 1378 	operator<(const map<_K1, _T1, _C1, _A1>&,
 1379 		  const map<_K1, _T1, _C1, _A1>&);
usr/include/c++/7.4.0/bits/stl_pair.h
  209     : private __pair_base<_T1, _T2>
  209     : private __pair_base<_T1, _T2>
  211       typedef _T1 first_type;    /// @c first_type is the first bound type
  212       typedef _T2 second_type;   /// @c second_type is the second bound type
  214       _T1 first;                 /// @c first is a copy of the first object
  215       _T2 second;                /// @c second is a copy of the second object
  252       using _PCCP = _PCC<true, _T1, _T2>;
  252       using _PCCP = _PCC<true, _T1, _T2>;
  260       constexpr pair(const _T1& __a, const _T2& __b)
  260       constexpr pair(const _T1& __a, const _T2& __b)
  269       explicit constexpr pair(const _T1& __a, const _T2& __b)
  269       explicit constexpr pair(const _T1& __a, const _T2& __b)
  283 			    _T1, _T2>;
  283 			    _T1, _T2>;
  311        constexpr pair(_U1&& __x, const _T2& __y)
  318        explicit constexpr pair(_U1&& __x, const _T2& __y)
  325        constexpr pair(const _T1& __x, _U2&& __y)
  332        explicit pair(const _T1& __x, _U2&& __y)
  379 		__and_<is_copy_assignable<_T1>,
  380 		       is_copy_assignable<_T2>>::value,
  390 		__and_<is_move_assignable<_T1>,
  391 		       is_move_assignable<_T2>>::value,
  402       typename enable_if<__and_<is_assignable<_T1&, const _U1&>,
  402       typename enable_if<__and_<is_assignable<_T1&, const _U1&>,
  413       typename enable_if<__and_<is_assignable<_T1&, _U1&&>,
  413       typename enable_if<__and_<is_assignable<_T1&, _U1&&>,
  454     operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
  454     operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
usr/include/c++/7.4.0/bits/stl_uninitialized.h
  144 		      const _Tp& __x)
  182 		       const _Tp& __x)
  288 			   _ForwardIterator __result, allocator<_Tp>&)
usr/include/c++/7.4.0/bits/stl_vector.h
   77 	rebind<_Tp>::other _Tp_alloc_type;
  216     class vector : protected _Vector_base<_Tp, _Alloc>
  227       typedef _Vector_base<_Tp, _Alloc>			_Base;
  232       typedef _Tp					value_type;
  919       _Tp*
  923       const _Tp*
usr/include/c++/7.4.0/ext/alloc_traits.h
  117       { typedef typename _Base_type::template rebind_alloc<_Tp> other; };
usr/include/c++/7.4.0/ext/new_allocator.h
   63       typedef _Tp*       pointer;
   64       typedef const _Tp* const_pointer;
   65       typedef _Tp&       reference;
   66       typedef const _Tp& const_reference;
   67       typedef _Tp        value_type;
   84 	new_allocator(const new_allocator<_Tp1>&) _GLIBCXX_USE_NOEXCEPT { }
  111 	return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
  130       { return size_t(-1) / sizeof(_Tp); }
  135 	construct(_Up* __p, _Args&&... __args)
  135 	construct(_Up* __p, _Args&&... __args)
  136 	{ ::new((void *)__p) _Up(std::forward<_Args>(__args)...); }
  140 	destroy(_Up* __p) { __p->~_Up(); }
usr/include/c++/7.4.0/initializer_list
   50       typedef _E 		value_type;
   51       typedef const _E& 	reference;
   52       typedef const _E& 	const_reference;
   54       typedef const _E* 	iterator;
   55       typedef const _E* 	const_iterator;
usr/include/c++/7.4.0/tuple
   56     struct __is_empty_non_tuple : is_empty<_Tp> { };
  125       constexpr _Head_base(const _Head& __h)
  132         constexpr _Head_base(_UHead&& __h)
  159       static constexpr _Head&
  162       static constexpr const _Head&
  165       _Head _M_head_impl;
  194       static constexpr _Head&
  197       static constexpr const _Head&
  210       constexpr _Tuple_impl(const _Head& __head, const _Tail&... __tail)
  210       constexpr _Tuple_impl(const _Head& __head, const _Tail&... __tail)
  216         constexpr _Tuple_impl(_UHead&& __head, _UTail&&... __tail)
  216         constexpr _Tuple_impl(_UHead&& __head, _UTail&&... __tail)
  248 		    const _Head& __head, const _Tail&... __tail)
  248 		    const _Head& __head, const _Tail&... __tail)
  262         _Tuple_impl(allocator_arg_t __tag, const _Alloc& __a,
  268 	_Tuple_impl(allocator_arg_t __tag, const _Alloc& __a,
  344     : private _Head_base<_Idx, _Head>
  348       typedef _Head_base<_Idx, _Head> _Base;
  350       static constexpr _Head&
  353       static constexpr const _Head&
  360       constexpr _Tuple_impl(const _Head& __head)
  365         constexpr _Tuple_impl(_UHead&& __head)
  376         constexpr _Tuple_impl(const _Tuple_impl<_Idx, _UHead>& __in)
  380         constexpr _Tuple_impl(_Tuple_impl<_Idx, _UHead>&& __in)
  390 		    const _Head& __head)
  473       return __and_<is_constructible<_Elements, const _UElements&>...>::value;
  473       return __and_<is_constructible<_Elements, const _UElements&>...>::value;
  479       return __and_<is_convertible<const _UElements&, _Elements>...>::value;
  479       return __and_<is_convertible<const _UElements&, _Elements>...>::value;
  485       return __and_<is_constructible<_Elements, _UElements&&>...>::value;
  485       return __and_<is_constructible<_Elements, _UElements&&>...>::value;
  491       return __and_<is_convertible<_UElements&&, _Elements>...>::value;
  491       return __and_<is_convertible<_UElements&&, _Elements>...>::value;
  497       return  __and_<__not_<is_same<tuple<_Elements...>,
  501                      __not_<is_convertible<_SrcTuple, _Elements...>>,
  502                      __not_<is_constructible<_Elements..., _SrcTuple>>
  508       return  __not_<is_same<tuple<_Elements...>,
  556     class tuple : public _Tuple_impl<0, _Elements...>
  558       typedef _Tuple_impl<0, _Elements...> _Inherited;
  598             _Elements...>;
  608         constexpr tuple(const _Elements&... __elements)
  619       explicit constexpr tuple(const _Elements&... __elements)
  628                       _Elements...>;
  636                       _Elements...>;
  646         constexpr tuple(_UElements&&... __elements)
  668             _Elements...>;
  730 	      const _Elements&... __elements)
  741                        const _Elements&... __elements)
  767 	tuple(allocator_arg_t __tag, const _Alloc& __a, const tuple& __in)
  771 	tuple(allocator_arg_t __tag, const _Alloc& __a, tuple&& __in)
 1288       typedef _Head type;
 1302     constexpr _Head&
 1303     __get_helper(_Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
 1307     constexpr const _Head&
 1308     __get_helper(const _Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
 1309     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
 1313     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
 1313     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
 1313     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
 1314     get(tuple<_Elements...>& __t) noexcept
 1319     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
 1319     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
 1319     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
 1320     get(const tuple<_Elements...>& __t) noexcept
 1325     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
 1325     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
 1325     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
 1326     get(tuple<_Elements...>&& __t) noexcept
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  326     : public __is_integral_helper<typename remove_cv<_Tp>::type>::type
  354     : public __is_floating_point_helper<typename remove_cv<_Tp>::type>::type
  381     : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
  567     : public __is_null_pointer_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  602                           is_void<_Tp>>>::type
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  631     : public __is_member_pointer_helper<typename remove_cv<_Tp>::type>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  762     typename add_rvalue_reference<_Tp>::type declval() noexcept;
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  798       typedef decltype(__test<_Tp>(0)) type;
  811                remove_all_extents<_Tp>::type>::type
  825     : public __is_destructible_safe<_Tp>::type
  889       typedef decltype(__test<_Tp>(0)) type;
  894     : public __and_<__not_<is_void<_Tp>>,
  895                     __is_default_constructible_impl<_Tp>>
  915     : public __is_default_constructible_atom<_Tp>::type
  921     : public __is_default_constructible_safe<_Tp>::type
  984       typedef decltype(__test<_Tp, _Arg>(0)) type;
  989     : public __and_<is_destructible<_Tp>,
  990                     __is_direct_constructible_impl<_Tp, _Arg>>
 1072 			 __is_direct_constructible_ref_cast<_Tp, _Arg>,
 1073 			 __is_direct_constructible_new_safe<_Tp, _Arg>
 1079     : public __is_direct_constructible_new<_Tp, _Arg>::type
 1119     : public __is_direct_constructible<_Tp, _Arg>
 1130     : public __is_constructible_impl<_Tp, _Args...>::type
 1142     : public is_constructible<_Tp, const _Tp&>
 1142     : public is_constructible<_Tp, const _Tp&>
 1148     : public __is_copy_constructible_impl<_Tp>
 1160     : public is_constructible<_Tp, _Tp&&>
 1160     : public is_constructible<_Tp, _Tp&&>
 1166     : public __is_move_constructible_impl<_Tp>
 1246     : public is_nothrow_constructible<_Tp, _Tp&&>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1292     : public __is_copy_assignable_impl<_Tp>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1310     : public __is_move_assignable_impl<_Tp>
 1377     static void __helper(const _Tp&);
 1380     static true_type __test(const _Tp&,
 1381                             decltype(__helper<const _Tp&>({}))* = 0);
 1390     typedef decltype(__test(declval<_Tp>())) type;
 1395       : public __is_implicitly_default_constructible_impl<_Tp>::type
 1400       : public __and_<is_default_constructible<_Tp>,
 1401                       __is_implicitly_default_constructible_safe<_Tp>>
 1526 	static void __test_aux(_To1);
 1538       typedef decltype(__test<_From, _To>(0)) type;
 1538       typedef decltype(__test<_From, _To>(0)) type;
 1545     : public __is_convertible_helper<_From, _To>::type
 1545     : public __is_convertible_helper<_From, _To>::type
 1554     { typedef _Tp     type; };
 1558     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1629     { typedef _Tp   type; };
 1633     { typedef _Tp   type; };
 1637     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1664     : public __add_rvalue_reference_helper<_Tp>
 1955     { typedef _Tp     type; };
 2171     { typedef _Iffalse type; };
utils/unittest/googlemock/include/gmock/gmock-generated-matchers.h
  580         typename internal::DecayArray<T1>::type> >
  581 ElementsAre(const T1& e1) {
  583       typename internal::DecayArray<T1>::type> Args;
utils/unittest/googlemock/include/gmock/gmock-matchers.h
  206   bool operator()(const A& a, const B& b) const { return a == b; }
  206   bool operator()(const A& a, const B& b) const { return a == b; }
  519   static Matcher<T> Cast(const M& polymorphic_matcher_or_value) {
  536             internal::ImplicitlyConvertible<M, Matcher<T> >::value>());
  540   static Matcher<T> CastImpl(const M& value, BooleanConstant<false>) {
  547   static Matcher<T> CastImpl(const M& polymorphic_matcher_or_value,
  612 inline Matcher<T> MatcherCast(const M& matcher) {
  613   return internal::MatcherCastImpl<T, M>::Cast(matcher);
  897   explicit ComparisonBase(const Rhs& rhs) : rhs_(rhs) {}
  907     explicit Impl(const Rhs& rhs) : rhs_(rhs) {}
  921     Rhs rhs_;
  924   Rhs rhs_;
  929 class EqMatcher : public ComparisonBase<EqMatcher<Rhs>, Rhs, AnyEq> {
  929 class EqMatcher : public ComparisonBase<EqMatcher<Rhs>, Rhs, AnyEq> {
  931   explicit EqMatcher(const Rhs& rhs)
 3454   Matcher<Target> operator()(const Arg& a) const {
 3760 inline internal::EqMatcher<T> Eq(T x) { return internal::EqMatcher<T>(x); }
 3760 inline internal::EqMatcher<T> Eq(T x) { return internal::EqMatcher<T>(x); }
utils/unittest/googlemock/include/gmock/internal/gmock-internal-utils.h
  355 template <typename T> struct DecayArray { typedef T type; };  // NOLINT
utils/unittest/googletest/include/gtest/gtest-printers.h
  140   static void PrintValue(const T& value, ::std::ostream* os) {
  205     ::std::basic_ostream<Char, CharTraits>& os, const T& x) {
  206   TypeWithoutFormatter<T,
  207       (internal::IsAProtocolMessage<T>::value ? kProtobuf :
  208        internal::ImplicitlyConvertible<const T&, internal::BiggestInt>::value ?
  223 void DefaultPrintNonContainerTo(const T& value, ::std::ostream* os) {
  373                     const C& container, ::std::ostream* os) {
  439                     const T& value, ::std::ostream* os) {
  455 void PrintTo(const T& value, ::std::ostream* os) {
  478   DefaultPrintTo(IsContainerTest<T>(0), is_pointer<T>(), value, os);
  699   static void Print(const T& value, ::std::ostream* os) {
  853 void UniversalPrint(const T& value, ::std::ostream* os) {
  856   typedef T T1;
utils/unittest/googletest/include/gtest/internal/custom/raw-ostream.h
   29   static const T& printable(const T& V) { return V; }
   29   static const T& printable(const T& V) { return V; }
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   37   return StreamSwitch<T>::printable(V);
utils/unittest/googletest/include/gtest/internal/gtest-internal.h
  830 struct AddReference { typedef T& type; };  // NOLINT
  863   static typename AddReference<From>::type MakeFrom();