Function template operator>>
boost::logic::operator>> — Reads a tribool value from a stream. 
 Synopsis
template<typename CharT, typename Traits> 
  std::basic_istream< CharT, Traits > & 
  operator>>(std::basic_istream< CharT, Traits > & in, tribool & x);
Description
Когда<(out.flags() & std::ios_base::boolalpha) == 0>, эта функция считывает значение<long>из входного потока<in>и преобразует это значение в трибул. Если это значение равно 0, то<x>становится<false>; если это 1,<x>становится<true>; если это 2,<becomes><indetermine>; в противном случае операция выходит из строя (и бит отказа устанавливается на входном потоке<in>).
Когда<(out.flags() & std::ios_base::boolalpha) != 0>, эта функция сначала определяет имена ложных, истинных и неопределенных значений. Фальшивые и истинные имена извлекаются из<std::numpunct>граней локализации входного потока (если реализация стандартной библиотеки C++ поддерживает локализации) или из<default_false_name>и<default_true_name>функций (если поддержка локализации отсутствует). Неопределенное имя извлекается из соответствующей грани<indeterminate_name>get_default_indeterminate_name>(если реализация стандартной библиотеки C++ не поддерживает локали, или грань<indeterminate_name>x>присваивается значение, соответствующее самому длинному имени, которое соответствовало. Если имя не совпадает или все имена пусты, операция выходит из строя (и бит отказа устанавливается на входном потоке<in>).