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