Когда этот макрос определяется, BOOST_HANA_*_ASSERT макро- и друзья отключены, т.е. они расширяются до ничего.
Этот макрос определяется автоматически при определении NDEBUG. Он также может быть определен пользователями до включения этого заголовка или определения на командной строке.
Отключает проверку концепции в методах интерфейса.
Когда этот макрос не определен (по умолчанию), разобранные методы гарантируют, что аргументы, которые они передают, являются моделями надлежащей концепции (ы). Это может быть очень полезно для ловли ошибок в программировании, но это также немного менее эффективное время компиляции. Вы, вероятно, всегда должны оставить чеки включенными (и, следовательно, никогда не определить этот макрос), за исключением, возможно, в переводческих единицах, которые составляются очень часто, но код которых с использованием Ханы изменяется очень редко.
Позволяет использовать расширение GNU "строго буквального оператора".
Этот оператор пока не является частью языка, но его поддерживают как Clang, так и GCC. Этот оператор позволяет Хане предоставить приятный _s пользовательский термин для создания строк времени компиляции.
Когда этот макрос не определен, расширение GNU не будет использоваться Ханой. Поскольку это нестандартное расширение, макрос не определяется по умолчанию.
Включает дополнительные утверждения и проверки здравомыслия, которые должны быть сделаны Ханой.
Когда этот макрос определяется (это не определено по умолчанию), дополнительные проверки здравомыслия могут быть проведены Ханой. Эти проверки могут быть дорогостоящими для выполнения, либо с точки зрения времени компиляции, либо с точки зрения времени исполнения. Эти проверки могут помочь отладить приложение во время его первоначальной разработки, но они не должны быть включены как часть нормальной конфигурации.
Macro expanding to the major version of the library, i.e. the x in x.y.z.
Definition: version.hpp:23
Макро расширяется до полной версии библиотеки, в гексадекимальном представлении.
В частности, BOOST_HANA_VERSION расширяет до гексадесимального числа формы 0xVVRRPP, где V является основной версией библиотеки, RR является небольшой версией и PP - это уровень патч. Это позволяет сравнивать версию библиотеки:
The major, minor and patch versions of the library are also available individually with the BOOST_HANA_{MAJOR,MINOR,PATCH}_VERSION macros.
Статья Boost.Hana: Configuration options раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.