blob: 1122715a5dafb3a781e74d1e4bc1825e6ccb38b9 [file] [log] [blame]
// Copyright 2019 The Fuchsia Authors
//
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file or at
// https://opensource.org/licenses/MIT
#ifndef ZIRCON_KERNEL_LIB_KTL_INCLUDE_KTL_TYPE_TRAITS_H_
#define ZIRCON_KERNEL_LIB_KTL_INCLUDE_KTL_TYPE_TRAITS_H_
#include <lib/stdcompat/type_traits.h>
namespace ktl {
using cpp20::is_bounded_array;
using cpp20::is_bounded_array_v;
using cpp20::is_unbounded_array;
using cpp20::is_unbounded_array_v;
using std::is_array;
using std::is_array_v;
using std::conjunction;
using std::conjunction_v;
using std::disjunction;
using std::disjunction_v;
using std::conditional;
using std::conditional_t;
using std::decay;
using std::decay_t;
using std::enable_if;
using std::enable_if_t;
using std::has_unique_object_representations;
using std::has_unique_object_representations_v;
using std::is_const;
using std::is_const_v;
using std::is_copy_constructible;
using std::is_copy_constructible_v;
using std::is_copy_assignable;
using std::is_copy_assignable_v;
using std::is_default_constructible;
using std::is_default_constructible_v;
using std::is_enum;
using std::is_enum_v;
using std::is_floating_point;
using std::is_floating_point_v;
using std::is_function;
using std::is_function_v;
using std::is_integral;
using std::is_integral_v;
using std::invoke_result_t;
using std::is_invocable;
using std::is_invocable_r;
using std::is_invocable_r_v;
using std::is_invocable_v;
using std::is_lvalue_reference;
using std::is_lvalue_reference_v;
using std::is_move_constructible;
using std::is_move_constructible_v;
using std::is_move_assignable;
using std::is_move_assignable_v;
using std::is_pod;
using std::is_pod_v;
using std::is_same;
using std::is_same_v;
using std::is_signed;
using std::is_signed_v;
using std::is_standard_layout;
using std::is_standard_layout_v;
using std::is_trivial;
using std::is_trivial_v;
using std::is_trivially_copy_assignable;
using std::is_trivially_copy_assignable_v;
using std::is_trivially_copy_constructible;
using std::is_trivially_copy_constructible_v;
using std::is_trivially_destructible;
using std::is_trivially_destructible_v;
using std::is_trivially_move_assignable;
using std::is_trivially_move_assignable_v;
using std::is_trivially_move_constructible;
using std::is_trivially_move_constructible_v;
using std::is_unsigned;
using std::is_unsigned_v;
using std::is_void;
using std::is_void_v;
using std::remove_all_extents;
using std::remove_all_extents_t;
using std::remove_const;
using std::remove_const_t;
using std::remove_extent;
using std::remove_extent_t;
using std::remove_pointer;
using std::remove_pointer_t;
using std::remove_reference;
using std::remove_reference_t;
using std::aligned_storage;
using std::aligned_storage_t;
using std::underlying_type;
using std::underlying_type_t;
} // namespace ktl
#endif // ZIRCON_KERNEL_LIB_KTL_INCLUDE_KTL_TYPE_TRAITS_H_