|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/ADT/Optional.h 39 T value;
60 explicit OptionalStorage(in_place_t, Args &&... args)
61 : value(std::forward<Args>(args)...), hasVal(true) {}
72 T &getValue() LLVM_LVALUE_FUNCTION noexcept {
76 T const &getValue() const LLVM_LVALUE_FUNCTION noexcept {
81 T &&getValue() && noexcept {
87 template <class... Args> void emplace(Args &&... args) {
89 ::new ((void *)std::addressof(value)) T(std::forward<Args>(args)...);
89 ::new ((void *)std::addressof(value)) T(std::forward<Args>(args)...);
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/Support/AlignOf.h 30 T 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
475 typename std::enable_if<std::is_convertible<OtherT, T>::value>::type
483 new (getStorage()) storage_type(std::forward<OtherT>(Val));
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/type_traits.h 91 T t;
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/Tooling/Refactoring/ASTSelection.h 52 std::vector<SelectedASTNode> Children;
57 SelectedASTNode(SelectedASTNode &&) = default;
58 SelectedASTNode &operator=(SelectedASTNode &&) = default;
58 SelectedASTNode &operator=(SelectedASTNode &&) = default;
62 using ReferenceType = std::reference_wrapper<const SelectedASTNode>;
69 Optional<SelectedASTNode> findSelectedASTNodes(const ASTContext &Context,
100 ArrayRef<SelectedASTNode::ReferenceType> getParents() { return Parents; }
133 create(SourceRange SelectionRange, const SelectedASTNode &ASTSelection);
136 CodeRangeASTSelection(SelectedASTNode::ReferenceType SelectedNode,
137 ArrayRef<SelectedASTNode::ReferenceType> Parents,
144 SelectedASTNode::ReferenceType SelectedNode;
146 llvm::SmallVector<SelectedASTNode::ReferenceType, 8> Parents;
tools/clang/include/clang/Tooling/Refactoring/RefactoringActionRuleRequirements.h 62 Expected<SelectedASTNode> evaluate(RefactoringRuleContext &Context) const;
tools/clang/include/clang/Tooling/Refactoring/RefactoringRuleContext.h 65 void setASTSelection(std::unique_ptr<SelectedASTNode> Node) {
83 std::unique_ptr<SelectedASTNode> ASTNodeSelection;
tools/clang/lib/Tooling/Refactoring/ASTSelection.cpp 54 Optional<SelectedASTNode> getSelectedASTNode() {
56 SelectedASTNode Result = std::move(SelectionStack.back());
134 SelectedASTNode Node = std::move(SelectionStack.back());
173 std::vector<SelectedASTNode> SelectionStack;
182 Optional<SelectedASTNode>
216 static void dump(const SelectedASTNode &Node, llvm::raw_ostream &OS,
227 for (const auto &Child : Node.Children)
238 static bool hasAnyDirectChildrenWithKind(const SelectedASTNode &Node,
241 for (const auto &Child : Node.Children) {
252 SelectedASTNode::ReferenceType Node;
253 llvm::SmallVector<SelectedASTNode::ReferenceType, 8> Parents;
342 const SelectedASTNode &ASTSelection,
345 llvm::SmallVectorImpl<SelectedASTNode::ReferenceType> &ParentStack) {
349 for (const auto &Child : ASTSelection.Children) {
366 for (const auto &Child : ASTSelection.Children)
372 const SelectedASTNode &ASTSelection,
375 llvm::SmallVector<SelectedASTNode::ReferenceType, 16> ParentStack;
381 const SelectedASTNode &ASTSelection) {
tools/clang/lib/Tooling/Refactoring/ASTSelectionRequirements.cpp 14 Expected<SelectedASTNode>
22 Optional<SelectedASTNode> Selection =
33 Expected<SelectedASTNode> ASTSelection =
37 std::unique_ptr<SelectedASTNode> StoredSelection =
38 std::make_unique<SelectedASTNode>(std::move(*ASTSelection));
tools/clang/unittests/Tooling/ASTSelectionTest.cpp 32 Optional<SelectedASTNode>)>
39 Optional<SelectedASTNode>)>
69 Optional<SelectedASTNode>)>
79 llvm::function_ref<void(Optional<SelectedASTNode>)> Consumer,
90 void checkNodeImpl(bool IsTypeMatched, const SelectedASTNode &Node,
97 void checkDeclName(const SelectedASTNode &Node, StringRef Name) {
104 const SelectedASTNode &
105 checkNode(const SelectedASTNode &StmtNode, SourceSelectionKind SelectionKind,
115 const SelectedASTNode &
116 checkNode(const SelectedASTNode &DeclNode, SourceSelectionKind SelectionKind,
128 const SelectedASTNode &Node;
130 static void childKindVerifier(const SelectedASTNode &Node,
132 for (const SelectedASTNode &Child : Node.Children) {
139 ForAllChildrenOf(const SelectedASTNode &Node) : Node(Node) {}
146 ForAllChildrenOf allChildrenOf(const SelectedASTNode &Node) {
203 const auto &Fn = checkNode<FunctionDecl>(
208 const auto &Body = checkNode<CompoundStmt>(
211 const auto &Return = checkNode<ReturnStmt>(
227 const auto &Fn = checkNode<FunctionDecl>(
230 const auto &Body = checkNode<CompoundStmt>(
243 const auto &Fn = checkNode<FunctionDecl>(
246 const auto &Body = checkNode<CompoundStmt>(
259 const auto &Fn = checkNode<FunctionDecl>(
264 const auto &Body = checkNode<CompoundStmt>(
313 const auto &Fn = checkNode<FunctionDecl>(
316 const auto &Body = checkNode<CompoundStmt>(
334 const auto &Fn = checkNode<FunctionDecl>(
337 const auto &Body = checkNode<CompoundStmt>(
356 const auto &Fn = checkNode<FunctionDecl>(
359 const auto &Body = checkNode<CompoundStmt>(
404 const auto &Impl = checkNode<ObjCImplementationDecl>(
407 const auto &Fn = checkNode<FunctionDecl>(
420 const auto &Impl = checkNode<ObjCCategoryImplDecl>(
423 const auto &Fn = checkNode<FunctionDecl>(
436 const auto &Impl = checkNode<ObjCImplementationDecl>(
439 const auto &Selected = checkNode<FunctionDecl>(
444 const auto &Cat = checkNode<ObjCCategoryImplDecl>(
447 const auto &CatF = checkNode<FunctionDecl>(
486 const auto &Impl = checkNode<ObjCImplementationDecl>(
512 const auto &Record = checkNode<CXXRecordDecl>(
539 const SelectedASTNode &checkFnBody(const Optional<SelectedASTNode> &Node,
539 const SelectedASTNode &checkFnBody(const Optional<SelectedASTNode> &Node,
543 const auto &Fn = checkNode<FunctionDecl>(
576 const auto &CS = checkFnBody(Node, /*Name=*/"selectProp");
577 const auto &CCast = checkNode<CStyleCastExpr>(
580 const auto &POE = checkNode<PseudoObjectExpr>(
583 const auto &PRE = checkNode<ObjCPropertyRefExpr>(
586 const auto &Cast = checkNode<ImplicitCastExpr>(
597 const auto &CS = checkFnBody(Node, /*Name=*/"selectProp");
598 const auto &POE = checkNode<PseudoObjectExpr>(
601 const auto &BinOp = checkNode<BinaryOperator>(
604 const auto &PRE = checkNode<ObjCPropertyRefExpr>(
607 const auto &Cast = checkNode<ImplicitCastExpr>(
620 const auto &CS = checkFnBody(Node, /*Name=*/"selectSubscript");
621 const auto &CCast = checkNode<CStyleCastExpr>(
624 const auto &POE = checkNode<PseudoObjectExpr>(
627 const auto &SRE = checkNode<ObjCSubscriptRefExpr>(
630 const auto &Cast = checkNode<ImplicitCastExpr>(
643 const auto &CS = checkFnBody(Node, /*Name=*/"selectSubscript");
644 const auto &POE = checkNode<PseudoObjectExpr>(
647 const auto &BinOp = checkNode<BinaryOperator>(
650 const auto &SRE = checkNode<ObjCSubscriptRefExpr>(
653 const auto &Cast = checkNode<ImplicitCastExpr>(
658 const auto &POE2 = checkNode<PseudoObjectExpr>(
661 const auto &PRE = checkNode<ObjCPropertyRefExpr>(
664 const auto &Cast2 = checkNode<ImplicitCastExpr>(
725 ArrayRef<SelectedASTNode::ReferenceType> Parents =
746 ArrayRef<SelectedASTNode::ReferenceType> Parents =
800 ArrayRef<SelectedASTNode::ReferenceType> Parents =
828 ArrayRef<SelectedASTNode::ReferenceType> Parents =
858 ArrayRef<SelectedASTNode::ReferenceType> Parents =
886 ArrayRef<SelectedASTNode::ReferenceType> Parents =
935 ArrayRef<SelectedASTNode::ReferenceType> Parents =
959 ArrayRef<SelectedASTNode::ReferenceType> Parents =
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)
475 { __a.construct(__p, std::forward<_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&&
73 forward(typename std::remove_reference<_Tp>::type& __t) noexcept
83 constexpr _Tp&&
84 forward(typename std::remove_reference<_Tp>::type&& __t) noexcept
98 move(_Tp&& __t) noexcept
104 : public __and_<__not_<is_nothrow_move_constructible<_Tp>>,
105 is_copy_constructible<_Tp>>::type { };
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/refwrap.h 63 : _Maybe_get_result_type<_Functor>
176 : _Weak_result_type_impl<typename remove_cv<_Functor>::type>
215 : _Weak_result_type<_Tp>, _Refwrap_base_arg1<_Tp>, _Refwrap_base_arg2<_Tp>
215 : _Weak_result_type<_Tp>, _Refwrap_base_arg1<_Tp>, _Refwrap_base_arg2<_Tp>
215 : _Weak_result_type<_Tp>, _Refwrap_base_arg1<_Tp>, _Refwrap_base_arg2<_Tp>
369 inline reference_wrapper<const _Tp>
370 cref(const _Tp& __t) noexcept
377 void cref(const _Tp&&) = delete;
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)...); }
75 { ::new(static_cast<void*>(__p)) _T1(std::forward<_Args>(__args)...); }
97 _Destroy(_Tp* __pointer)
204 allocator<_Tp>&)
usr/include/c++/7.4.0/bits/stl_iterator.h 1224 __make_move_if_noexcept_iterator(_Tp* __i)
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_uninitialized.h 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*
962 emplace_back(_Args&&... __args);
1483 _M_realloc_insert(iterator __position, _Args&&... __args);
usr/include/c++/7.4.0/bits/unique_ptr.h 68 default_delete(const default_delete<_Up>&) noexcept { }
72 operator()(_Tp* __ptr) const
74 static_assert(!is_void<_Tp>::value,
76 static_assert(sizeof(_Tp)>0,
122 using type = _Up*;
137 using pointer = typename _Ptr<_Tp, _Dp>::type;
161 typename __uniq_ptr_impl<_Tp, _Up>::_DeleterConstraint::type;
163 __uniq_ptr_impl<_Tp, _Dp> _M_t;
166 using pointer = typename __uniq_ptr_impl<_Tp, _Dp>::pointer;
167 using element_type = _Tp;
252 unique_ptr(unique_ptr<_Up, _Ep>&& __u) noexcept
297 __safe_conversion_up<_Up, _Ep>,
301 operator=(unique_ptr<_Up, _Ep>&& __u) noexcept
811 { typedef unique_ptr<_Tp> __single_object; };
823 inline typename _MakeUniq<_Tp>::__single_object
824 make_unique(_Args&&... __args)
825 { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
825 { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
usr/include/c++/7.4.0/bits/vector.tcc 101 std::forward<_Args>(__args)...);
105 _M_realloc_insert(end(), std::forward<_Args>(__args)...);
418 std::forward<_Args>(__args)...);
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)...); }
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/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
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>
1215 : public __and_<is_constructible<_Tp, _Args...>,
1216 __is_nt_constructible_impl<_Tp, _Args...>>
1246 : public is_nothrow_constructible<_Tp, _Tp&&>
1246 : public is_nothrow_constructible<_Tp, _Tp&&>
1252 : public __is_nothrow_move_constructible_impl<_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; };
1645 { typedef _Tp& type; };
1650 : public __add_lvalue_reference_helper<_Tp>
1659 { typedef _Tp&& type; };
1664 : public __add_rvalue_reference_helper<_Tp>
1955 { typedef _Tp type; };
2171 { typedef _Iffalse type; };