|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/ADT/Optional.h 144 T value;
160 explicit OptionalStorage(in_place_t, Args &&... args)
161 : value(std::forward<Args>(args)...), hasVal(true) {}
172 T &getValue() LLVM_LVALUE_FUNCTION noexcept {
176 T const &getValue() const LLVM_LVALUE_FUNCTION noexcept {
181 T &&getValue() && noexcept {
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) && {
316 bool operator==(const Optional<T> &X, NoneType) {
367 template <typename T> bool operator==(const Optional<T> &X, const T &Y) {
367 template <typename T> bool operator==(const Optional<T> &X, const T &Y) {
include/llvm/Support/type_traits.h 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/Analysis/RetainSummaryManager.h 120 ObjKind O;
122 explicit ArgEffect(ArgEffectKind K = DoNothing, ObjKind O = ObjKind::AnyObj)
122 explicit ArgEffect(ArgEffectKind K = DoNothing, ObjKind O = ObjKind::AnyObj)
126 ObjKind getObjKind() const { return O; }
167 ObjKind O;
169 RetEffect(Kind k, ObjKind o = ObjKind::AnyObj) : K(k), O(o) {}
169 RetEffect(Kind k, ObjKind o = ObjKind::AnyObj) : K(k), O(o) {}
174 ObjKind getObjKind() const { return O; }
189 return RetEffect(OwnedWhenTrackedReceiver, ObjKind::ObjC);
192 static RetEffect MakeOwned(ObjKind o) {
195 static RetEffect MakeNotOwned(ObjKind o) {
629 ObjCAllocRetE(ARCEnabled ? RetEffect::MakeNotOwned(ObjKind::ObjC)
630 : RetEffect::MakeOwned(ObjKind::ObjC)),
631 ObjCInitRetE(ARCEnabled ? RetEffect::MakeNotOwned(ObjKind::ObjC)
726 Optional<ObjKind> hasAnyEnabledAttrOf(const Decl *D, QualType QT);
729 Optional<ObjKind> hasAnyEnabledAttrOf(const Decl *D, QualType QT);
tools/clang/lib/ARCMigrate/ObjCMT.cpp 1474 if (Ret.getObjKind() == ObjKind::CF) {
1481 else if (Ret.getObjKind() == ObjKind::ObjC) {
1497 if (AE.getKind() == DecRef && AE.getObjKind() == ObjKind::CF &&
1503 } else if (AE.getKind() == DecRef && AE.getObjKind() == ObjKind::ObjC &&
1535 if (Ret.getObjKind() == ObjKind::CF &&
1550 AE.getKind() == IncRef) && AE.getObjKind() == ObjKind::CF) {
1587 if (Ret.getObjKind() == ObjKind::CF) {
1594 else if (Ret.getObjKind() == ObjKind::ObjC) {
1623 && AE.getObjKind() == ObjKind::CF
1666 if ((Ret.getObjKind() == ObjKind::CF ||
1667 Ret.getObjKind() == ObjKind::ObjC) &&
tools/clang/lib/Analysis/RetainSummaryManager.cpp 68 Optional<ObjKind> RetainSummaryManager::hasAnyEnabledAttrOf(const Decl *D,
70 ObjKind K;
76 K = ObjKind::CF;
88 K = ObjKind::ObjC;
95 K = ObjKind::OS;
99 K = ObjKind::Generalized;
109 Optional<ObjKind> RetainSummaryManager::hasAnyEnabledAttrOf(const Decl *D,
305 return getPersistentSummary(RetEffect::MakeOwned(ObjKind::CF),
319 return getPersistentSummary(RetEffect::MakeOwned(ObjKind::CF), ScratchArgs,
326 ScratchArgs = AF.add(ScratchArgs, 1, ArgEffect(DecRef, ObjKind::CF));
334 ScratchArgs = AF.add(ScratchArgs, 2, ArgEffect(DecRef, ObjKind::CF));
355 return getPersistentSummary(RetEffect::MakeOwned(ObjKind::CF), ScratchArgs,
484 ArgEffect(DoNothing), ArgEffect(E, ObjKind::CF));
638 ObjKind K = ObjKind::AnyObj;
638 ObjKind K = ObjKind::AnyObj;
641 K = ObjKind::Generalized;
643 K = ObjKind::OS;
645 K = ObjKind::ObjC;
647 K = ObjKind::CF;
650 if (K != ObjKind::AnyObj)
791 ArgEffect Effect(AE, ObjKind::CF);
805 /*ThisEff=*/ArgEffect(IncRef, ObjKind::OS));
814 /*ThisEff=*/ArgEffect(DecRef, ObjKind::OS));
823 /*ThisEff=*/ArgEffect(Dealloc, ObjKind::OS));
828 return getPersistentSummary(RetEffect::MakeOwned(ObjKind::OS),
834 return getPersistentSummary(RetEffect::MakeNotOwned(ObjKind::OS),
840 return getPersistentSummary(RetEffect::MakeOwned(ObjKind::CF),
846 return getPersistentSummary(RetEffect::MakeNotOwned(ObjKind::CF),
921 if (K == ObjKind::OS) {
941 Template->addArg(AF, parm_idx, ArgEffect(AK, ObjKind::OS));
988 Template->setThisEffect(ArgEffect(DecRef, ObjKind::OS));
1002 Template->setReceiverEffect(ArgEffect(DecRef, ObjKind::ObjC));
1019 ArgEffect ReceiverEff = ArgEffect(DoNothing, ObjKind::ObjC);
1031 ResultEff = RetEffect::MakeNotOwned(ObjKind::ObjC);
1043 ResultEff = RetEffect::MakeOwned(ObjKind::CF);
1046 ResultEff = RetEffect::MakeNotOwned(ObjKind::CF);
1050 ResultEff = RetEffect::MakeNotOwned(ObjKind::CF);
1056 ReceiverEff = ArgEffect(DecRef, ObjKind::ObjC);
1065 ResultEff = RetEffect::MakeOwned(ObjKind::CF);
1068 ReceiverEff = ArgEffect(Autorelease, ObjKind::ObjC);
1071 ReceiverEff = ArgEffect(IncRef, ObjKind::ObjC);
1074 ReceiverEff = ArgEffect(DecRef, ObjKind::ObjC);
1077 ReceiverEff = ArgEffect(Dealloc, ObjKind::ObjC);
1099 ReceiverEff = ArgEffect(StopTrackingHard, ObjKind::ObjC);
1180 getPersistentSummary(RetEffect::MakeNotOwned(ObjKind::ObjC),
1197 ObjCInitRetE, ScratchArgs, ArgEffect(DecRef, ObjKind::ObjC));
1209 getPersistentSummary(RetEffect::MakeOwned(ObjKind::CF), ScratchArgs);
1214 NoRet, ScratchArgs, ArgEffect(IncRef, ObjKind::ObjC));
1219 ArgEffect(DecRef, ObjKind::ObjC));
1224 ObjKind::ObjC));
1229 ObjKind::ObjC));
tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp 189 ObjKind K;
191 K = ObjKind::ObjC;
193 K = ObjKind::CF;
239 ArgEffect(MayEscape, ObjKind::ObjC), hasErr, C);
253 RefVal::makeNotOwned(ObjKind::ObjC, ResultTy));
279 RefVal::makeNotOwned(ObjKind::ObjC, ResultTy));
300 ObjKind Kind;
302 Kind = ObjKind::ObjC;
304 Kind = ObjKind::CF;
438 if (TrackedValue->getObjKind() != ObjKind::OS)
574 RefVal::makeOwned(ObjKind::OS, PointeeTy));
627 Effect = ArgEffect(StopTrackingHard, ObjKind::OS);
717 if (AE.getObjKind() == ObjKind::ObjC && IgnoreRetainMsg) {
1354 ObjKind K = AE->getObjKind();
1355 if (K == ObjKind::Generalized || K == ObjKind::OS ||
1355 if (K == ObjKind::Generalized || K == ObjKind::OS ||
1356 (TrackNSCFStartParam && (K == ObjKind::ObjC || K == ObjKind::CF))) {
1356 (TrackNSCFStartParam && (K == ObjKind::ObjC || K == ObjKind::CF))) {
tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.h 110 RefVal(Kind k, ObjKind o, unsigned cnt, unsigned acnt, QualType t,
123 ObjKind getObjKind() const {
172 static RefVal makeOwned(ObjKind o, QualType t) {
180 static RefVal makeNotOwned(ObjKind o, QualType t) {
tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp 263 if (CurrV.getObjKind() == ObjKind::CF) {
266 } else if (CurrV.getObjKind() == ObjKind::OS) {
269 } else if (CurrV.getObjKind() == ObjKind::Generalized) {
788 ObjKind K = RV->getObjKind();
789 if (K == ObjKind::ObjC || K == ObjKind::CF) {
789 if (K == ObjKind::ObjC || K == ObjKind::CF) {
796 } else if (RV->getObjKind() == ObjKind::OS) {
usr/include/c++/7.4.0/bits/move.h 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
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
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
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
777 : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
777 : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
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>
1554 { 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; };
1659 { typedef _Tp&& type; };