|
template<class T , size_t N> |
| ctre::phoenix6::swerve::span (T(&)[N]) -> span< T, N > |
|
template<class T , size_t N> |
| ctre::phoenix6::swerve::span (std::array< T, N > &) -> span< T, N > |
|
template<class T , size_t N> |
| ctre::phoenix6::swerve::span (const std::array< T, N > &) -> span< const T, N > |
|
template<class Container > |
| ctre::phoenix6::swerve::span (Container &) -> span< typename Container::value_type > |
|
template<class Container > |
| ctre::phoenix6::swerve::span (const Container &) -> span< const typename Container::value_type > |
|
template<typename ElementType , std::size_t Extent> |
span< const std::byte,((Extent==dynamic_extent) ? dynamic_extent :sizeof(ElementType) *Extent)> | ctre::phoenix6::swerve::as_bytes (span< ElementType, Extent > s) noexcept |
|
template<class ElementType , size_t Extent, typename std::enable_if<!std::is_const< ElementType >::value, int >::type = 0> |
span< std::byte,((Extent==dynamic_extent) ? dynamic_extent :sizeof(ElementType) *Extent)> | ctre::phoenix6::swerve::as_writable_bytes (span< ElementType, Extent > s) noexcept |
|
template<std::size_t N, typename E , std::size_t S> |
constexpr auto | ctre::phoenix6::swerve::get (span< E, S > s) -> decltype(s[N]) |
|