| Home | Libraries | People | FAQ | More

## Reference

### Header <boost/logic/tribool.hpp>

    BOOST_TRIBOOL_THIRD_STATE(Name)

    namespace boost {
      namespace logic {
        class tribool;
        bool indeterminate(tribool, unspecified = unspecified);
        tribool operator!(tribool);
        tribool operator&&(tribool, tribool);
        tribool operator&&(tribool, bool);
        tribool operator&&(bool, tribool);
        tribool operator&&(indeterminate_keyword_t, tribool);
        tribool operator&&(tribool, indeterminate_keyword_t);
        tribool operator||(tribool, tribool);
        tribool operator||(tribool, bool);
        tribool operator||(bool, tribool);
        tribool operator||(indeterminate_keyword_t, tribool);
        tribool operator||(tribool, indeterminate_keyword_t);
        tribool operator==(tribool, tribool);
        tribool operator==(tribool, bool);
        tribool operator==(bool, tribool);
        tribool operator==(indeterminate_keyword_t, tribool);
        tribool operator==(tribool, indeterminate_keyword_t);
        tribool operator!=(tribool, tribool);
        tribool operator!=(tribool, bool);
        tribool operator!=(bool, tribool);
        tribool operator!=(indeterminate_keyword_t, tribool);
        tribool operator!=(tribool, indeterminate_keyword_t);
      }
    }

### Header <boost/logic/tribool_fwd.hpp>

### Header <boost/logic/tribool_io.hpp>

    namespace boost {
      namespace logic {
        template<typename CharT> class indeterminate_name;
        template<typename T>
          std::basic_string< T > get_default_indeterminate_name();

        // Returns the character string "indeterminate".
        template<>
          std::basic_string< char > get_default_indeterminate_name<char >();

        // Returns the wide character string L"indeterminate".
        template<>
          std::basic_string< wchar_t > get_default_indeterminate_name<wchar_t >();
        template<typename CharT, typename Traits>
          std::basic_ostream< CharT, Traits > &
          operator<<(std::basic_ostream< CharT, Traits > &, tribool);
        template<typename CharT, typename Traits>
          std::basic_ostream< CharT, Traits > &
          operator<<(std::basic_ostream< CharT, Traits > &, unspecified);
        template<typename CharT, typename Traits>
          std::basic_istream< CharT, Traits > &
          operator>>(std::basic_istream< CharT, Traits > &, tribool &);
      }
    }