Skip to content

v1.1.0 release

Latest
Compare
Choose a tag to compare
@dakka dakka released this 10 Sep 20:47
0198333

This release adds improvements and changes, including some from user feedback.

  • enum_range per enum range with various options:
    • specialization of enum_range class; convenience macros
    • T::ce_first and T::ce_last
  • benchmarking
  • conjure_enum, conjure_type and enum_bitset now in separate includes
  • significant improvements in compile times
  • selectable compile optimizations, including
    • FIX8_CONJURE_ENUM_ALL_OPTIMIZATIONS
    • FIX8_CONJURE_ENUM_IS_CONTINUOUS
    • FIX8_CONJURE_ENUM_NO_ANON
    • FIX8_CONJURE_ENUM_MINIMAL
  • bug fixes
  • conjure_enum API additions:
    • is_continuous
    • in_range
    • index
    • enum_cast
    • get_enum_min_value, get_enum_max_value
    • min_v, max_v
    • get_actual_enum_min_value, get_actual_enum_max_value
  • enum_bitset API additions:
    • std::bitset constructor and conversion
    • rotl, rotr
    • has_single_bit
    • to_hex_string
    • get_underlying, get_underlying_bit_size
    • get_bit_mask, get_unused_bit_mask
    • specialization for std::hash
    • countl_zero , countl_one , countr_zero , countr_one
    • const and non-const subscript operator (set and test)
  • expanded unit tests, edge case tests
  • updated to latest supported compilers
  • updated examples
  • documentation reorganised and expanded