You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What do I mean?
bool is always a logic type, of course. But there can be more logic types, e.g. boost::triboool.
is_logic must be adapted in the relevant libraries.
is_logic.hpp
This is not what type_traits is for - we do not provide specialization points for other libraries, we introspect the type system, nothing more or less.
tribool is a component of boost. As I wrote, such libraries must of course set is_logic (to true) themselves. But first a basis has to be created to represent this.
As I wrote ages ago, I would like to provide classes for 4-value logic https://en.wikipedia.org/wiki/Many-valued_logic#Belnap_logic_(B4) and for 3-value logic (which could replace the old tribool).
These would of course contain an is_logic.
Now you have to decide:
is_logic is not implemented
you are stuck with the stone old code (tribool), without the possibility to extend it
is_logic is implemented
various logic classes can be categorized (there are even more than 2-, 3- and 4-value logics)
What do I mean?
bool is always a logic type, of course. But there can be more logic types, e.g. boost::triboool.
is_logic must be adapted in the relevant libraries.
is_logic.hpp
The text was updated successfully, but these errors were encountered: