C++ type_traits for Arduino which cannot use it as default
- automatically use standard library first if the boards can
- if standard library is not enough (e.g. only C++11 is available), add missing parts listed below
- works almost all Arduino platforms (Let me know if you have errors)
- compatible with ArduinoSTL or other uClibc++ libraries
- thx @matthijskooijman
std::integral_constantstd::true_typestd::false_typestd::declvalstd::enable_ifstd::conditionalstd::remove_cvstd::remove_conststd::remove_volatilestd::remove_pointerstd::remove_referencestd::remove_extentstd::remove_all_extentsstd::add_cvstd::add_conststd::add_volatilestd::add_pointerstd::add_lvalue_referencestd::add_rvalue_referencestd::forwardstd::is_samestd::is_integralstd::is_floating_pointstd::is_arithmeticstd::is_signedstd::is_unsignedstd::is_conststd::is_volatilestd::is_referencestd::is_lvalue_referencestd::is_rvalue_referencestd::is_pointerstd::is_member_pointerstd::is_arraystd::is_convertiblestd::is_functionstd::is_emptystd::is_voidstd::is_classstd::is_scalarstd::is_objectstd::is_base_ofstd::decaystd::result_ofstd::rankstd::extentstd::addressof
std::numeric_limits(onlymax()andmin()now)std::swapstd::initializer_liststd::tuplestd::getstd::tuple_sizestd::functionstd::reference_wrapperstd::refstd::crefstd::as_const
std::enable_if_tstd::decay_tstd::remove_cv_tstd::remove_const_tstd::remove_volatile_tstd::remove_reference_tstd::remove_pointer_tstd::remove_extent_tstd::remove_all_extents_tstd::add_cv_tstd::add_const_tstd::add_volatile_tstd::add_pointer_tstd::add_lvalue_reference_tstd::add_rvalue_reference_tstd::integer_sequencestd::index_sequencestd::make_index_sequencestd::index_sequence_forstd::is_null_pointer
std::bool_constantstd::is_same_vstd::is_void_vstd::is_class_vstd::is_arithmetic_vstd::is_const_vstd::is_volatile_vstd::is_reference_vstd::is_lvalue_reference_vstd::is_rvalue_reference_vstd::is_pointer_vstd::is_member_pointer_vstd::is_null_pointer_vstd::is_scalar_vstd::is_array_vstd::is_object_vstd::is_function_vstd::is_base_of_vstd::rank_vstd::extent_vstd::void_tstd::disjunctionstd::conjunctionstd::negationstd::applystd::invoke_resultstd::invoke_result_t
std::type_identitystd::type_identity_tstd::remove_cvrefstd::remove_cvref_tstd::is_bounded_arraystd::is_bounded_array_vstd::is_unbounded_arraystd::is_unbounded_array_v
arx::is_detectedarx::is_callablearx::function_traits
(traits with the _v suffix are defined only when compiled as C++17 or higher)
- Packetizer
- MsgPack
- MsgPacketizer
- ArduinoOSC
- ArtNet
- PollingTimer
- Tween
- ArxStringUtils
- Filters
- Debouncer
- ArduinoEigen
MIT