[istream.rvalue] # 31 Input/output library [[input.output]](./#input.output) ## 31.7 Formatting and manipulators [[iostream.format]](iostream.format#istream.rvalue) ### 31.7.5 Input streams [[input.streams]](input.streams#istream.rvalue) #### 31.7.5.6 Rvalue stream extraction [istream.rvalue] [🔗](#lib:operator%3e%3e,basic_istream) `template Istream&& operator>>(Istream&& is, T&& x); ` [1](#1) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iostreams.tex#L5776) *Constraints*: The expression is >> std​::​forward(x) is well-formed when treated as an [unevaluated operand](expr.context#def:unevaluated_operand "7.2.3 Context dependence [expr.context]") andIstream is publicly and unambiguously derived from ios_base[.](#1.sentence-1) [2](#2) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iostreams.tex#L5782) *Effects*: Equivalent to:is >> std::forward(x);return std::move(is);