| #include <c10/util/ArrayRef.h> |
| #include <c10/util/Optional.h> |
| |
| #include <type_traits> |
| |
| static_assert( |
| C10_IS_TRIVIALLY_COPYABLE(c10::optional<int>), |
| "c10::optional<int> should be trivially copyable"); |
| static_assert( |
| C10_IS_TRIVIALLY_COPYABLE(c10::optional<bool>), |
| "c10::optional<bool> should be trivially copyable"); |
| static_assert( |
| C10_IS_TRIVIALLY_COPYABLE(c10::optional<c10::IntArrayRef>), |
| "c10::optional<IntArrayRef> should be trivially copyable"); |
| static_assert( |
| sizeof(c10::optional<c10::IntArrayRef>) == sizeof(c10::IntArrayRef), |
| "c10::optional<IntArrayRef> should be size-optimized"); |