reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
34 using SimpleType = From; // The real type this represents... 37 static SimpleType &getSimplifiedValue(From &Val) { return Val; } 41 using NonConstSimpleType = typename simplify_type<From>::SimpleType; 47 static RetType getSimplifiedValue(const From& Val) { 76 static inline bool doit(const From &Val) { 77 return isa_impl<To, From>::doit(Val); 104 static inline bool doit(const From *Val) { 106 return isa_impl<To, From>::doit(*Val); 141 template <class X, class Y> LLVM_NODISCARD inline bool isa(const Y &Val) { 142 return isa_impl_wrap<X, const Y, 143 typename simplify_type<const Y>::SimpleType>::doit(Val); 204 using ret_type = typename cast_retty_impl<To,FromTy>::ret_type; 210 To, From, typename simplify_type<From>::SimpleType>::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) { 227 static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) { 228 typename cast_retty<To, FromTy>::ret_type Res2 236 std::is_same<X, typename simplify_type<X>::SimpleType>::value; 236 std::is_same<X, typename simplify_type<X>::SimpleType>::value; 256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) { 256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) { 258 return cast_convert_val<X, Y, 259 typename simplify_type<Y>::SimpleType>::doit(Val); 263 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*, 266 typename simplify_type<Y*>::SimpleType>::doit(Val); 305 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type 306 cast_or_null(Y *Val) { 342 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) { 366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type 367 dyn_cast_or_null(Y *Val) {include/llvm/Support/type_traits.h
55 struct add_const_past_pointer { using type = const T; };
unittests/Support/Casting.cpp32 bar(const bar &); 51 static inline bool doit(const bar &Val) { 78 bar *fub(); 106 bar B; 107 extern bar &B1; 108 bar &B1 = B; 109 extern const bar *B2; 111 const bar &B3 = B1; 112 const bar *const B4 = B2; 144 std::unique_ptr<const bar> BP(B2); 164 std::unique_ptr<const bar> BP(fub()); 255 const bar *B2 = &B; 258 bar *llvm::fub() { return nullptr; }usr/include/c++/7.4.0/type_traits
381 : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type 1554 { typedef _Tp type; }; 1558 { typedef _Tp type; }; 1563 { typedef _Tp type; }; 1574 remove_const<typename remove_volatile<_Tp>::type>::type type; 1983 { typedef _Up type; };