3#ifndef TETL_RANGES_SIZE_HPP
4#define TETL_RANGES_SIZE_HPP
17auto size(
auto&) ->
void =
delete;
18auto size(
auto const&) ->
void =
delete;
33 template <
typename T, etl::
size_t Size>
39 template <
typename T, etl::
size_t Size>
45 template <has_member_size T>
46 [[nodiscard]]
constexpr auto operator()(T&& t)
const noexcept(
noexcept(
decay_copy(t.size())))
51 template <has_adl_size T>
52 [[nodiscard]]
constexpr auto operator()(T&& t)
const noexcept(
noexcept(
decay_copy(
size(t))))
57 auto operator()(
auto&&) const ->
void = delete;
64inline constexpr auto size = size_cpo::fn{};
ValueType[Size] c_array
Definition c_array.hpp:12
constexpr auto disable_sized_range
Definition disable_sized_range.hpp:10
constexpr auto decay_copy(T &&t) noexcept(is_nothrow_convertible_v< T, decay_t< T > >) -> decay_t< T >
Definition decay_copy.hpp:14
constexpr auto size
Definition size.hpp:64
Definition ranges_in_fun_result.hpp:11