uTL
micro Template library
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 Cutl::_1wire_i< impl_t >Template base class for 1-wire communication interface using CRTP
 Cutl::_1wire_i< _1wire_uart_i< Impl_t > >
 Cutl::_1wire_i< type >
 Cutl::_1wire_i< virtual_tag >A virtual base class implementation
 Cutl::common_impl::__common_ref_< T, U, class >
 Cutl::common_impl::__common_ref_< T &&, U &&, meta::void_t< __common_ref< T &, U & >, meta::when< ConvertibleTo< T &&, __rref_res< T, U > > >, meta::when< ConvertibleTo< U &&, __rref_res< T, U > > > > >
 Cutl::common_impl::__common_ref_< T &&, U &, meta::void_t< __common_ref< const T &, U & >, meta::when< ConvertibleTo< T &&, __common_ref< const T &, U & > > > > >
 Cutl::common_impl::__common_ref_< T &, U &&, meta::void_t< __common_ref< T &, const U & >, meta::when< ConvertibleTo< U &&, __common_ref< T &, const U & > > > > >
 Cutl::common_impl::__common_ref_< T &, U &, meta::void_t< __lref_res< T, U >, meta::when< std::is_reference< __lref_res< T, U > >::value > > >
 Cutl::common_impl::__common_reference2< T, U, meta::void_t< __basic_common_reference_t< T, U > > >
 Cutl::common_impl::__common_reference3< T, U, meta::void_t< __cond_res< T, U > > >
 Cutl::common_impl::__common_reference< T, U, meta::when< std::is_reference< T >::value &&std::is_reference< U >::value > >
 Cutl::common_impl::__copy_cv_< From >
 Cutl::common_impl::__copy_cv_< const From >
 Cutl::common_impl::__copy_cv_< const volatile From >
 Cutl::common_impl::__copy_cv_< volatile From >
 Cutl::common_impl::__xref< class >
 Cutl::common_impl::__xref< const T >
 Cutl::common_impl::__xref< const volatile T >
 Cutl::common_impl::__xref< T & >
 Cutl::common_impl::__xref< T && >
 Cutl::common_impl::__xref< volatile T >
 Cutl::meta::at_impl::_add_pointer< T >
 Cutl::meta::detail::_and_<... >
 Cutl::meta::detail::_or_<... >
 C_T1
 Cutl::meta::apply_impl::apply_< Fn, Seq >
 Cutl::meta::apply_impl::apply_< Fn, integer_sequence< T, Is... > >Sequence == integer_sequence<>
 Cutl::meta::apply_impl::apply_< Fn, typelist< List... > >Sequence == typelist<>
 Cutl::array< _Tp, _Nm >A standard container for storing a fixed size sequence of elements
 Cutl::array_traits< _Tp, _Nm >Array container traits helper
 Cutl::array_traits< _Tp, 0 >
 Cutl::meta::at_impl::at_< List, N >
 Cutl::meta::at_impl::at_< typelist< List... >, N >
 Cutl::meta::at_impl::at_head_<... >
 Cutl::meta::at_impl::at_head_< typelist< voids... > >
 Cutl::meta::back_impl::back_< List >
 Cutl::meta::back_impl::back_< typelist< Head, Tail... > >
 Cutl::common_impl::basic_common_reference< class, class, class, class >
 Cutl::meta::bind_back< Fn, Ts >
 Cutl::meta::bind_front< Fn, Ts >
 Cutl::meta::typelist< Ts >::cat_<... >
 Cutl::meta::cat_impl::cat_< Lists >
 Cutl::meta::cat_impl::cat_< typelist< L1... > >
 Cutl::meta::typelist< Ts >::cat_< typelist< L1... >, typelist< L2... > >
 Cutl::meta::cat_impl::cat_< typelist< L1... >, typelist< L2... > >
 Cutl::meta::cat_impl::cat_< typelist< L1..., L2... >, Ln... >
 Cutl::meta::cat_impl::cat_<>
 Cutl::common_impl::common_reference<... >
 Cutl::common_impl::common_reference< common_reference_t< T, U >, V, W... >
 Cutl::common_impl::common_reference< T >
 Ccommon_type
 Cutl::meta::detail::compose_< Fns >
 Cutl::meta::detail::compose_< Fn0 >
 Cutl::meta::detail::compose_< Fn0, Fns... >
 Cutl::meta::detail::compose_f_< Fns >
 Cutl::meta::detail::compose_f_< Fn0 >
 Cutl::meta::detail::compose_f_< Fn0, Fns... >
 Cutl::meta::count_if_impl::count_if_< typename, typename, size_t >
 Cutl::meta::count_if_impl::count_if_< typelist< Head, Tail... >, Fn, N >
 Cutl::meta::count_if_impl::count_if_< typelist<>, Fn, N >
 Cutl::crtp_tagCRTP support tag type
 Cutl::meta::detail::defer_< F, Ts >
 Cutl::meta::detail::defer_i_< T, F, Is >
 Cutl::meta::detail::detector< Default, AlwaysVoid, Op, Args >
 Cutl::meta::detail::detector< Default, void_t< Op< Args... > >, Op, Args... >
 Cutl::dev_iterator_traits< _Cat, _Tp, _Diff >Device iterator collection
 Cutl::dev_iterator_traits< std::output_iterator_tag, data_t, void >
 Cutl::dev_iterator_traits< std::output_iterator_tag, iter_t >
 Cfalse_
 Cfalse_
 Cutl::meta::filter_impl::filter_< typename, typename, typename >
 Cutl::meta::filter_impl::filter_< typelist< Head, Tail... >, Fn, L >
 Cutl::meta::filter_impl::filter_< typelist<>, Fn, L >
 Cutl::meta::find_if_impl::find_if_< typename, typename, index_t >
 Cutl::meta::find_if_impl::find_if_< typelist< Head, Tail... >, Fn, N >
 Cutl::meta::find_if_impl::find_if_< typelist<>, Fn, N >
 Cutl::meta::fold_impl::fold_< typename, typename, typename >
 Cutl::meta::fold_impl::fold_< typelist< Head, Tail... >, V, Fn >
 Cutl::meta::fold_impl::fold_< typelist<>, V0, Fn >
 Cutl::meta::front_impl::front_< L >
 Cutl::meta::front_impl::front_< typelist< Head, Tail... > >
 Cutl::i2c_i< impl_t >Abstract base class for i2c bus
 Cutl::i2c_i< i2c_bb_i< impl_t > >
 Cutl::i2c_i< virtual_tag >A virtual base class specialization
 Cutl::id_t< _Tp, _Nm >A standard container for storing IDs as a fixed size sequence of bytes. This type is based on etl::array Meets the requirements of: container, reversible container, sequence. Sets support random access iterators
 Cutl::id_t< uint8_t, 8 >
 Cutl::id_traits< _Tp, _Nm >Id container traits helper
 Cutl::id_traits< _Tp, 0 >
 Cutl::meta::identity< _Tp >
 Cutl::idx_dev< impl_t, data_t, idx_t, N >Abstract base class for indexed devices
 Cutl::idx_dev< virtual_tag, data_t, idx_t, N >A virtual base class specialization
 Cif_
 Cutl::meta::detail::if_c_< If,... >
 Cutl::meta::detail::if_c_< false, Then, Else >
 Cutl::meta::detail::if_c_< true, Then >
 Cutl::meta::detail::if_c_< true, Then, Else >
 Cutl::in_dev< impl_t, data_t, streamsize >Abstract base class for input devices
 Cutl::in_dev< virtual_tag, data_t, streamsize >A virtual base class specialization
 Cutl::inbuf_dev< impl_t, data_t, streamsize >Abstract base class for input buffered devices
 Cutl::inbuf_dev< virtual_tag, data_t, streamsize >A virtual base class specialization
 Cutl::indev_it< cont_t, iter_t, _beg, _size >Input device iterator type. We "future call" interface methods from owner class to provide iterator functionality
 Cutl::input_iterator_tag
 Cutl::detail::invoke_result_< B, _Callable, _Args >
 Cutl::detail::invoke_result_< true, _Callable, _Args... >
 Cutl::iodev_it< cont_t, iter_t, _beg, _size >Indexed device iterator type. We "future call" interface methods from owner class to provide iterator functionality
 Cutl::meta::detail::is_applicable_< F, T >
 Cutl::meta::detail::is_applicable_i_< T, F, Is >
 Cutl::meta::detail::is_applicable_q_< F, T >
 Cutl::details::is_boolean_< B, typename >
 Cutl::details::is_boolean_< B, meta::void_t< meta::use_if_same_t< bool, decltype(!std::declval< cref_< B >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< B >>()==std::declval< cref_< B >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< B >>() !=std::declval< cref_< B >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< B >>() &&std::declval< cref_< B >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< B >>()||std::declval< cref_< B >>())> > >
 Cis_constructible
 Cutl::details::is_strict_totally_ordered_< T, typename >
 Cutl::details::is_strict_totally_ordered_< T, meta::void_t< meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>()< std::declval< cref_< T >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>() > std::declval< cref_< T >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>()<=std::declval< cref_< T >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>() >=std::declval< cref_< T >>())> > >
 Cutl::details::is_strict_totally_ordered_with_< T, U, typename >
 Cutl::details::is_strict_totally_ordered_with_< T, U, meta::void_t< meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>()< std::declval< cref_< U >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>() > std::declval< cref_< U >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>()<=std::declval< cref_< U >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>() >=std::declval< cref_< U >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< U >>()< std::declval< cref_< T >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< U >>() > std::declval< cref_< T >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< U >>()<=std::declval< cref_< T >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< U >>() >=std::declval< cref_< T >>())> > >
 Cutl::details::is_weakly_equality_comparable_with_< T, U, typename >
 Cutl::details::is_weakly_equality_comparable_with_< T, U, meta::void_t< meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>()==std::declval< cref_< U >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< T >>() !=std::declval< cref_< U >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< U >>()==std::declval< cref_< T >>())>, meta::use_if_same_t< bool, decltype(std::declval< cref_< U >>() !=std::declval< cref_< T >>())> > >
 Cutl::istreamdev_it< cont_t, data_t >
 Cutl::meta::nat_
 Cutl::meta::nil_
 Cnot_same_
 Cutl::meta::not_same_as< T1 >
 Cutl::ostream_dev< impl_t, data_t >Abstract base classes for output stream devices
 Cutl::ostream_dev< virtual_tag, data_t >
 Cutl::ostreamdev_it< cont_t, data_t >
 Cutl::out_dev< impl_t, data_t, streamsize >Abstract base classes for output devices
 Cutl::out_dev< virtual_tag, data_t, streamsize >A virtual base class specialization
 Cutl::outdev_it< cont_t, iter_t, _beg, _end >Output device iterator type. We "future call" interface methods from owner class to provide iterator functionality
 Cutl::output_iterator_tagIterator tags [std.iterator.tags] Extension: contiguous_iterator_tag for denoting contiguous iterators
 Cutl::meta::pop_back_impl::pop_back_< List >
 Cutl::meta::pop_front_impl::pop_front_< List >
 Cutl::meta::pop_front_impl::pop_front_< typelist< Head, Tail... > >
 Cutl::meta::quote< F >
 Cutl::meta::quote_i< T, F >Wrap a template F taking literal constants of type T into an Invokable
 Cutl::meta::replace_if_impl::replace_if_< typename, typename, typename, typename >
 Cutl::meta::replace_if_impl::replace_if_< typelist< Head, Tail... >, Fn, T, Ret >
 Cutl::meta::replace_if_impl::replace_if_< typelist<>, Fn, T, Ret >
 Cutl::meta::rev_fold_impl::rev_fold_< typename, typename, typename >
 Cutl::meta::rev_fold_impl::rev_fold_< typelist< Head, Tail... >, V, Fn >
 Cutl::meta::rev_fold_impl::rev_fold_< typelist< Tail >, V, Fn >
 Cutl::meta::rev_fold_impl::rev_fold_< typelist<>, V, Fn >
 Cutl::meta::reverse_impl::reverse_< List, V >
 Cutl::meta::same_as< T1 >
 Cutl::meta::seek_if_impl::seek_if_< typename, typename, index_t >
 Cutl::meta::seek_if_impl::seek_if_< typelist< Head, Tail... >, Fn, N >
 Cutl::meta::seek_if_impl::seek_if_< typelist<>, Fn, N >
 Cutl::spi_i< impl_t >
 Cutl::spi_i< spi_bb_i< impl_t, CPOL, CPHA, BitOrder > >
 Cutl::spi_i< virtual_tag >A virtual base class implementation
 Cutl::meta::typelist< Ts >::times_< N, T >
 Cutl::meta::typelist< Ts >::times_< 0, T... >
 Cutl::meta::typelist< Ts >::times_< 1, T... >
 Cutl::meta::transform_impl::transform_< typename, typename >
 Cutl::meta::transform_impl::transform_< typelist< typelist< Ts... >, Fn >, void_t< invoke< Fn, Ts >... > >
 Cutl::meta::transform_impl::transform_< typelist< typelist< Ts0... >, typelist< Ts1... >, Fn >, void_t< invoke< Fn, Ts0, Ts1 >... > >
 Cutl::meta::transform_lazy_impl::transform_lazy_< typename, typename >
 Cutl::meta::transform_lazy_impl::transform_lazy_< typelist< typelist< Ts... >, Fn >, void_t< invoke< Fn, Ts >... > >
 Cutl::meta::transform_lazy_impl::transform_lazy_< typelist< typelist< Ts0... >, typelist< Ts1... >, Fn >, void_t< invoke< Fn, Ts0, Ts1 >... > >
 Ctrue_
 Ctrue_
 Cutl::detail::try_invoke< _Callable, _Args >
 Cutl::array_traits< _Tp, 0 >::type
 Cutl::id_traits< _Tp, 0 >::type
 Cutl::meta::typelist< Ts >
 Cutl::iodev_it< cont_t, iter_t, _beg, _size >::value_type_t
 Cutl::virtual_tagVirtual support tag type
 Cutl::meta::detail::when_< If >
 Cutl::meta::detail::when_< true >
 Cutl::meta::wrap< F >
 Cutl::meta::wrap_i< T, F >Wrap a template F taking literal constants of type T into an Invokable