Csaba Dabis | 0202c35 | 2019-08-22 00:20:36 +0000 | [diff] [blame] | 1 | #pragma clang system_header |
| 2 | |
| 3 | namespace llvm { |
| 4 | template <class X, class Y> |
| 5 | const X *cast(Y Value); |
| 6 | |
| 7 | template <class X, class Y> |
| 8 | const X *dyn_cast(Y *Value); |
| 9 | template <class X, class Y> |
| 10 | const X &dyn_cast(Y &Value); |
| 11 | |
| 12 | template <class X, class Y> |
| 13 | const X *cast_or_null(Y Value); |
| 14 | |
| 15 | template <class X, class Y> |
| 16 | const X *dyn_cast_or_null(Y *Value); |
| 17 | template <class X, class Y> |
| 18 | const X *dyn_cast_or_null(Y &Value); |
Csaba Dabis | 4d71600 | 2019-08-22 02:57:59 +0000 | [diff] [blame^] | 19 | |
| 20 | template <class X, class Y> |
| 21 | bool isa(Y Value); |
| 22 | |
| 23 | template <class X, class Y> |
| 24 | bool isa_and_nonnull(Y Value); |
Csaba Dabis | 0202c35 | 2019-08-22 00:20:36 +0000 | [diff] [blame] | 25 | } // namespace llvm |