bool has_value() const noexcept;
Returns: true если *this содержит объект, в противном случае false.
const type_info& type() const noexcept;
Returns: typeid(T) если *this имеет содержащееся значение типа T, в противном случае typeid(void).
[ Note: Полезно для запросов к типам, известным либо во время компиляции, либо только во время выполнения. ] — end note