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

References

include/llvm/Support/Casting.h
  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);
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  218   static typename cast_retty<To, From>::ret_type doit(From &Val) {
  218   static typename cast_retty<To, From>::ret_type doit(From &Val) {
  221                           simplify_type<From>::getSimplifiedValue(Val));
  236       std::is_same<X, typename simplify_type<X>::SimpleType>::value;
  236       std::is_same<X, typename simplify_type<X>::SimpleType>::value;
  247 inline typename std::enable_if<!is_simple_type<Y>::value,
  248                                typename cast_retty<X, const Y>::ret_type>::type
  249 cast(const Y &Val) {
  252       X, const Y, typename simplify_type<const Y>::SimpleType>::doit(Val);
  252       X, const Y, typename simplify_type<const Y>::SimpleType>::doit(Val);
  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);
  284     typename std::enable_if<!is_simple_type<Y>::value,
  285                             typename cast_retty<X, const Y>::ret_type>::type
  286     cast_or_null(const Y &Val) {
  295     typename std::enable_if<!is_simple_type<Y>::value,
  296                             typename cast_retty<X, Y>::ret_type>::type
  297     cast_or_null(Y &Val) {
  330     typename std::enable_if<!is_simple_type<Y>::value,
  331                             typename cast_retty<X, const Y>::ret_type>::type
  332     dyn_cast(const Y &Val) {
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  351     typename std::enable_if<!is_simple_type<Y>::value,
  352                             typename cast_retty<X, const Y>::ret_type>::type
  353     dyn_cast_or_null(const Y &Val) {
  359     typename std::enable_if<!is_simple_type<Y>::value,
  360                             typename cast_retty<X, Y>::ret_type>::type
  361     dyn_cast_or_null(Y &Val) {
unittests/Support/Casting.cpp
  344   static SimpleType getSimplifiedValue(pointer_wrappers::PTy &P) {
  350   static SimpleType getSimplifiedValue(const pointer_wrappers::PTy &P) {
  365 pointer_wrappers::PTy MN(nullptr);
  366 pointer_wrappers::PTy MB(&B);
  367 pointer_wrappers::PTy MD(&D);
  370 const pointer_wrappers::PTy CN(nullptr);
  371 const pointer_wrappers::PTy CB(&B);
  372 const pointer_wrappers::PTy CD(&D);