#include "asl/object.hpp" #include "asl/test_types.hpp" static_assert(asl::is_object>); static_assert(asl::is_object>); static_assert(asl::is_object>); static_assert(asl::is_object>); static_assert(asl::is_empty>); static_assert(asl::is_empty>); static_assert(sizeof(asl::object) == 4); static_assert(sizeof(asl::object) == sizeof(void*)); static_assert(sizeof(asl::object) == sizeof(void*)); static_assert(sizeof(asl::object) == sizeof(void*)); static_assert(asl::default_constructible>); static_assert(asl::default_constructible>); static_assert(asl::default_constructible>); static_assert(!asl::default_constructible>); static_assert(asl::trivially_default_constructible>); static_assert(asl::trivially_default_constructible>); static_assert(!asl::trivially_default_constructible>); static_assert(!asl::trivially_default_constructible>); static_assert(asl::copy_constructible>); static_assert(asl::copy_constructible>); static_assert(asl::copy_constructible>); static_assert(!asl::copy_constructible>); static_assert(asl::trivially_copy_constructible>); static_assert(asl::trivially_copy_constructible>); static_assert(!asl::trivially_copy_constructible>); static_assert(!asl::trivially_copy_constructible>); static_assert(asl::move_constructible>); static_assert(asl::move_constructible>); static_assert(asl::move_constructible>); static_assert(!asl::move_constructible>); static_assert(asl::trivially_move_constructible>); static_assert(asl::trivially_move_constructible>); static_assert(!asl::trivially_move_constructible>); static_assert(!asl::trivially_move_constructible>); static_assert(asl::copy_assignable>); static_assert(asl::copy_assignable>); static_assert(asl::copy_assignable>); static_assert(!asl::copy_assignable>); static_assert(asl::trivially_copy_assignable>); static_assert(!asl::trivially_copy_assignable>); static_assert(asl::trivially_copy_assignable>); static_assert(!asl::trivially_copy_assignable>); static_assert(asl::move_assignable>); static_assert(asl::move_assignable>); static_assert(asl::move_assignable>); static_assert(!asl::move_assignable>); static_assert(asl::trivially_move_assignable>); static_assert(!asl::trivially_move_assignable>); static_assert(asl::trivially_move_assignable>); static_assert(!asl::trivially_move_assignable>); static_assert(asl::trivially_destructible>); static_assert(asl::trivially_destructible>); static_assert(!asl::trivially_destructible>); int main() { return 0; }