Inspired by this comment, I was wondering what are the main differences between eosio::multi_index and boost:multi_index and why do they exist?

The documentation notes that there are important differences, but does not go into much detail about the differences:

The Multi-Index container interface eosio::multi_index provides a homogeneous container of an arbitrary C++ type (and it does not need to be a plain-old data type or be fixed-size) that is kept sorted in multiple indices by keys of various types that are derived from the objects. It can be compared to a traditional database table with rows, columns, and indices. It can also be easily compared to Boost Multi-index Containers. In fact many of the member function signatures of eosio::multi_index are modeled after boost::multi_index, although there are important differences.

  • 2
    Jackson Kelley just released his Udemy course, and he uploaded some of his videos on YouTube. He goes over the multi index and the similarities/differences with the boost multi index container. youtube.com/user/jackodwhacko/videos – Nat Aug 20 '18 at 0:55
  • The code for multi_index.hpp is in github.com/EOSIO/eosio.cdt/libraries/eosiolib It does pull in boost/hana.hpp but cannot see where in the EOSIO implementation HANA is it being used? Boost is getting used in action.hpp, dispatcher, datastream... – Walter K Nov 7 '18 at 9:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.