On this page
std::basic_ispanstream<CharT,Traits>::basic_ispanstream
|
(1) | (since C++23) |
|
(2) | (since C++23) |
|
(3) | (since C++23) |
|
(4) | (since C++23) |
Constructs a new basic_ispanstream.
1) Uses the storage referenced by
s as initial underlying buffer of the wrapped std::basic_spanbuf device. The wrapped std::basic_spanbuf object is constructed as basic_spanbuf<Char, Traits>(s, mode | std::ios_base::in).
2) Uses the storage referenced by
r after converted to std::span<const CharT> as initial underlying buffer of the wrapped std::basic_spanbuf device. The wrapped std::basic_spanbuf object is opened in mode std::ios_base::in. This overload participates in overload resolution only if ROS models borrowed_range, std::convertible_to<ROS, std::span<CharT>> is false, and std::convertible_to<ROS, std::span<const CharT>> is true.
3) Move constructor. Move constructs the
std::basic_istream base subobject and the wrapped std::basic_spanbuf from those of rhs, and then calls set_rdbuf with the address of the wrapped std::basic_spanbuf in *this to install it.
4) Copy constructor is deleted.
basic_ispanstream is not copyable.
Parameters
| s | - | std::span referencing the storage to be use as initial underlying buffer of stream |
||||||||||||||||
| r | - | borrowed_range to be use as initial underlying buffer of stream |
||||||||||||||||
| mode | - | specifies stream open mode. Following constants and bit-wise OR between them may be used:
|
||||||||||||||||
| other | - | another basic_ispanstream to be moved from |
Exceptions
May throw implementation-defined exceptions.
Example
See also
|
(C++23)
|
constructs a basic_spanbuf object (public member function of std::basic_spanbuf<CharT,Traits>) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/basic_ispanstream/basic_ispanstream