Linux vmi2545633.contaboserver.net 6.1.0-32-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.129-1 (2025-03-06) x86_64
Apache/2.4.62 (Debian)
Server IP : 127.0.0.1 & Your IP : 127.0.0.1
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
include /
c++ /
12 /
Delete
Unzip
Name
Size
Permission
Date
Action
backward
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
bits
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
debug
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
decimal
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
experimental
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
ext
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
parallel
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
pstl
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
tr1
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
tr2
[ DIR ]
drwxr-xr-x
2025-04-08 16:44
algorithm
2.94
KB
-rw-r--r--
2023-01-08 09:12
any
18.38
KB
-rw-r--r--
2023-01-08 09:12
array
14.61
KB
-rw-r--r--
2023-01-08 09:12
atomic
46.67
KB
-rw-r--r--
2023-01-08 09:12
barrier
7.57
KB
-rw-r--r--
2023-01-08 09:12
bit
13.89
KB
-rw-r--r--
2023-01-08 09:12
bitset
44.92
KB
-rw-r--r--
2023-01-08 09:12
cassert
1.61
KB
-rw-r--r--
2023-01-08 09:12
ccomplex
1.3
KB
-rw-r--r--
2023-01-08 09:12
cctype
2.35
KB
-rw-r--r--
2023-01-08 09:12
cerrno
1.73
KB
-rw-r--r--
2023-01-08 09:12
cfenv
2
KB
-rw-r--r--
2023-01-08 09:12
cfloat
1.84
KB
-rw-r--r--
2023-01-08 09:12
charconv
20.49
KB
-rw-r--r--
2023-01-08 09:12
chrono
58.31
KB
-rw-r--r--
2023-01-08 09:12
cinttypes
2.11
KB
-rw-r--r--
2023-01-08 09:12
ciso646
1.43
KB
-rw-r--r--
2023-01-08 09:12
climits
1.87
KB
-rw-r--r--
2023-01-08 09:12
clocale
1.86
KB
-rw-r--r--
2023-01-08 09:12
cmath
48.23
KB
-rw-r--r--
2023-01-08 09:12
codecvt
5.15
KB
-rw-r--r--
2023-01-08 09:12
compare
36.77
KB
-rw-r--r--
2023-01-08 09:12
complex
54.63
KB
-rw-r--r--
2023-01-08 09:12
complex.h
1.56
KB
-rw-r--r--
2023-01-08 09:12
concepts
11.94
KB
-rw-r--r--
2023-01-08 09:12
condition_variable
12.48
KB
-rw-r--r--
2023-01-08 09:12
coroutine
9.58
KB
-rw-r--r--
2023-01-08 09:12
csetjmp
1.9
KB
-rw-r--r--
2023-01-08 09:12
csignal
1.81
KB
-rw-r--r--
2023-01-08 09:12
cstdalign
1.37
KB
-rw-r--r--
2023-01-08 09:12
cstdarg
1.82
KB
-rw-r--r--
2023-01-08 09:12
cstdbool
1.37
KB
-rw-r--r--
2023-01-08 09:12
cstddef
6.11
KB
-rw-r--r--
2023-01-08 09:12
cstdint
2.28
KB
-rw-r--r--
2023-01-08 09:12
cstdio
4.33
KB
-rw-r--r--
2023-01-08 09:12
cstdlib
6.18
KB
-rw-r--r--
2023-01-08 09:12
cstring
3.08
KB
-rw-r--r--
2023-01-08 09:12
ctgmath
1.33
KB
-rw-r--r--
2023-01-08 09:12
ctime
2.24
KB
-rw-r--r--
2023-01-08 09:12
cuchar
2.84
KB
-rw-r--r--
2023-01-08 09:12
cwchar
6.39
KB
-rw-r--r--
2023-01-08 09:12
cwctype
2.73
KB
-rw-r--r--
2023-01-08 09:12
cxxabi.h
21.76
KB
-rw-r--r--
2023-01-08 09:12
deque
4.35
KB
-rw-r--r--
2023-01-08 09:12
exception
5.29
KB
-rw-r--r--
2023-01-08 09:12
execution
1.76
KB
-rw-r--r--
2023-01-08 09:12
expected
33.11
KB
-rw-r--r--
2023-01-08 09:12
fenv.h
1.97
KB
-rw-r--r--
2023-01-08 09:12
filesystem
1.61
KB
-rw-r--r--
2023-01-08 09:12
forward_list
2.63
KB
-rw-r--r--
2023-01-08 09:12
fstream
39.73
KB
-rw-r--r--
2023-01-08 09:12
functional
42.3
KB
-rw-r--r--
2023-01-08 09:12
future
51.12
KB
-rw-r--r--
2023-01-08 09:12
initializer_list
2.97
KB
-rw-r--r--
2023-01-08 09:12
iomanip
16.16
KB
-rw-r--r--
2023-01-08 09:12
ios
1.56
KB
-rw-r--r--
2023-01-08 09:12
iosfwd
8.16
KB
-rw-r--r--
2023-01-08 09:12
iostream
2.63
KB
-rw-r--r--
2023-01-08 09:12
istream
33.3
KB
-rw-r--r--
2023-01-08 09:12
iterator
2.69
KB
-rw-r--r--
2023-01-08 09:12
latch
2.67
KB
-rw-r--r--
2023-01-08 09:12
limits
70.04
KB
-rw-r--r--
2023-01-08 09:12
list
3.57
KB
-rw-r--r--
2023-01-08 09:12
locale
1.45
KB
-rw-r--r--
2023-01-08 09:12
map
4.04
KB
-rw-r--r--
2023-01-08 09:12
math.h
4.47
KB
-rw-r--r--
2023-01-08 09:12
memory
4.44
KB
-rw-r--r--
2023-01-08 09:12
memory_resource
25.26
KB
-rw-r--r--
2023-01-08 09:12
mutex
25.4
KB
-rw-r--r--
2023-01-08 09:12
new
8.45
KB
-rw-r--r--
2023-01-08 09:12
numbers
6.1
KB
-rw-r--r--
2023-01-08 09:12
numeric
25.37
KB
-rw-r--r--
2023-01-08 09:12
optional
43.4
KB
-rw-r--r--
2023-01-08 09:12
ostream
25.31
KB
-rw-r--r--
2023-01-08 09:12
queue
2.41
KB
-rw-r--r--
2023-01-08 09:12
random
1.65
KB
-rw-r--r--
2023-01-08 09:12
ranges
117.31
KB
-rw-r--r--
2023-01-08 09:12
ratio
19.81
KB
-rw-r--r--
2023-01-08 09:12
regex
3.04
KB
-rw-r--r--
2023-01-08 09:12
scoped_allocator
17.24
KB
-rw-r--r--
2023-01-08 09:12
semaphore
2.93
KB
-rw-r--r--
2023-01-08 09:12
set
3.9
KB
-rw-r--r--
2023-01-08 09:12
shared_mutex
24.02
KB
-rw-r--r--
2023-01-08 09:12
source_location
2.68
KB
-rw-r--r--
2023-01-08 09:12
span
12.82
KB
-rw-r--r--
2023-01-08 09:12
spanstream
12.07
KB
-rw-r--r--
2023-01-08 09:12
sstream
38.31
KB
-rw-r--r--
2023-01-08 09:12
stack
2.33
KB
-rw-r--r--
2023-01-08 09:12
stacktrace
21.02
KB
-rw-r--r--
2023-01-08 09:12
stdatomic.h
3.97
KB
-rw-r--r--
2023-01-08 09:12
stdexcept
9.65
KB
-rw-r--r--
2023-01-08 09:12
stdlib.h
2.2
KB
-rw-r--r--
2023-01-08 09:12
stop_token
15.61
KB
-rw-r--r--
2023-01-08 09:12
streambuf
29.19
KB
-rw-r--r--
2023-01-08 09:12
string
4.69
KB
-rw-r--r--
2023-01-08 09:12
string_view
25.55
KB
-rw-r--r--
2023-01-08 09:12
syncstream
8.13
KB
-rw-r--r--
2023-01-08 09:12
system_error
14.65
KB
-rw-r--r--
2023-01-08 09:12
tgmath.h
1.33
KB
-rw-r--r--
2023-01-08 09:12
thread
6.68
KB
-rw-r--r--
2023-01-08 09:12
tuple
61.37
KB
-rw-r--r--
2023-01-08 09:12
type_traits
107.81
KB
-rw-r--r--
2023-01-08 09:12
typeindex
3.43
KB
-rw-r--r--
2023-01-08 09:12
typeinfo
8.11
KB
-rw-r--r--
2023-01-08 09:12
unordered_map
3.62
KB
-rw-r--r--
2023-01-08 09:12
unordered_set
3.48
KB
-rw-r--r--
2023-01-08 09:12
utility
6.89
KB
-rw-r--r--
2023-01-08 09:12
valarray
39.82
KB
-rw-r--r--
2023-01-08 09:12
variant
63.95
KB
-rw-r--r--
2023-01-08 09:12
vector
4.7
KB
-rw-r--r--
2023-01-08 09:12
version
10.98
KB
-rw-r--r--
2023-01-08 09:12
Save
Rename
// Streams based on std::span -*- C++ -*- // Copyright The GNU Toolchain Authors. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the // terms of the GNU General Public License as published by the // Free Software Foundation; either version 3, or (at your option) // any later version. // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // Under Section 7 of GPL version 3, you are granted additional // permissions described in the GCC Runtime Library Exception, version // 3.1, as published by the Free Software Foundation. // You should have received a copy of the GNU General Public License and // a copy of the GCC Runtime Library Exception along with this program; // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see // <http://www.gnu.org/licenses/>. /** @file spanstream * This is a Standard C++ Library header. */ #ifndef _GLIBCXX_SPANSTREAM #define _GLIBCXX_SPANSTREAM 1 #pragma GCC system_header #if __cplusplus > 202002L #include <span> #include <streambuf> #include <istream> #include <ostream> #include <bits/ranges_base.h> #if __cpp_lib_span namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION #define __cpp_lib_spanstream 202106L template<typename _CharT, typename _Traits> class basic_spanbuf : public basic_streambuf<_CharT, _Traits> { using __streambuf_type = basic_streambuf<_CharT, _Traits>; public: using char_type = _CharT; using int_type = typename _Traits::int_type; using pos_type = typename _Traits::pos_type; using off_type = typename _Traits::off_type; using traits_type = _Traits; // [spanbuf.ctor], constructors basic_spanbuf() : basic_spanbuf(ios_base::in | ios_base::out) { } explicit basic_spanbuf(ios_base::openmode __which) : __streambuf_type(), _M_mode(__which) { } explicit basic_spanbuf(std::span<_CharT> __s, ios_base::openmode __which = ios_base::in | ios_base::out) : __streambuf_type(), _M_mode(__which) { span(__s); } basic_spanbuf(const basic_spanbuf&) = delete; /** Move constructor. * * Transfers the buffer and pointers into the get and put areas from * `__rhs` to `*this`. * * In this implementation `rhs` is left unchanged, * but that is not guaranteed by the standard. */ basic_spanbuf(basic_spanbuf&& __rhs) : __streambuf_type(__rhs), _M_mode(__rhs._M_mode), _M_buf(__rhs._M_buf) { } // [spanbuf.assign], assignment and swap basic_spanbuf& operator=(const basic_spanbuf&) = delete; basic_spanbuf& operator=(basic_spanbuf&& __rhs) { basic_spanbuf(std::move(__rhs)).swap(*this); return *this; } void swap(basic_spanbuf& __rhs) { __streambuf_type::swap(__rhs); std::swap(_M_mode, __rhs._M_mode); std::swap(_M_buf, __rhs._M_buf); } // [spanbuf.members], member functions std::span<_CharT> span() const noexcept { if (_M_mode & ios_base::out) return {this->pbase(), this->pptr()}; else return _M_buf; } void span(std::span<_CharT> __s) noexcept { _M_buf = __s; if (_M_mode & ios_base::out) { this->setp(__s.data(), __s.data() + __s.size()); if (_M_mode & ios_base::ate) this->pbump(__s.size()); } if (_M_mode & ios_base::in) this->setg(__s.data(), __s.data(), __s.data() + __s.size()); } protected: // [spanbuf.virtuals], overridden virtual functions basic_streambuf<_CharT, _Traits>* setbuf(_CharT* __s, streamsize __n) override { span({__s, __n}); return this; } pos_type seekoff(off_type __off, ios_base::seekdir __way, ios_base::openmode __which = ios_base::in | ios_base::out) override { pos_type __ret = pos_type(off_type(-1)); if (__way == ios_base::beg) { if (0 <= __off && __off <= _M_buf.size()) { if (__which & ios_base::in) this->setg(this->eback(), this->eback() + __off, this->egptr()); if (__which & ios_base::out) { this->setp(this->pbase(), this->epptr()); this->pbump(__off); } __ret = pos_type(__off); } } else { off_type __base; __which &= (ios_base::in|ios_base::out); if (__which == ios_base::out) __base = this->pptr() - this->pbase(); else if (__way == ios_base::cur) { if (__which == ios_base::in) __base = this->gptr() - this->eback(); else return __ret; } else if (__way == ios_base::end) __base = _M_buf.size(); if (__builtin_add_overflow(__base, __off, &__off)) return __ret; if (__off < 0 || __off > _M_buf.size()) return __ret; if (__which & ios_base::in) this->setg(this->eback(), this->eback() + __off, this->egptr()); if (__which & ios_base::out) { this->setp(this->pbase(), this->epptr()); this->pbump(__off); } __ret = pos_type(__off); } return __ret; } pos_type seekpos(pos_type __sp, ios_base::openmode __which = ios_base::in | ios_base::out) override { return seekoff(off_type(__sp), ios_base::beg, __which); } private: ios_base::openmode _M_mode; std::span<_CharT> _M_buf; }; template<typename _CharT, typename _Traits> inline void swap(basic_spanbuf<_CharT, _Traits>& __x, basic_spanbuf<_CharT, _Traits>& __y) { __x.swap(__y); } using spanbuf = basic_spanbuf<char>; using wspanbuf = basic_spanbuf<wchar_t>; template<typename _CharT, typename _Traits> class basic_ispanstream : public basic_istream<_CharT, _Traits> { using __istream_type = basic_istream<_CharT, _Traits>; public: using char_type = _CharT; using int_type = typename _Traits::int_type; using pos_type = typename _Traits::pos_type; using off_type = typename _Traits::off_type; using traits_type = _Traits; // [ispanstream.ctor], constructors explicit basic_ispanstream(std::span<_CharT> __s, ios_base::openmode __which = ios_base::in) : __istream_type(std::__addressof(_M_sb)), _M_sb(__s, __which | ios_base::in) { } basic_ispanstream(const basic_ispanstream&) = delete; basic_ispanstream(basic_ispanstream&& __rhs) : __istream_type(std::move(__rhs)), _M_sb(std::move(__rhs._M_sb)) { __istream_type::set_rdbuf(std::addressof(_M_sb)); } template<typename _Ros> requires ranges::borrowed_range<_Ros> && (!convertible_to<_Ros, std::span<_CharT>>) && convertible_to<_Ros, std::span<const _CharT>> explicit basic_ispanstream(_Ros&& __s) : __istream_type(std::__addressof(_M_sb)), _M_sb(ios_base::in) { std::span<const _CharT> __sp(std::forward<_Ros>(__s)); _M_sb.span({const_cast<_CharT*>(__sp.data()), __sp.size()}); } // [ispanstream.assign], assignment and swap basic_ispanstream& operator=(const basic_ispanstream&) = delete; basic_ispanstream& operator=(basic_ispanstream&& __rhs) = default; void swap(basic_ispanstream& __rhs) { __istream_type::swap(__rhs); _M_sb.swap(__rhs._M_sb); } // [ispanstream.members], member functions basic_spanbuf<_CharT, _Traits>* rdbuf() const noexcept { return const_cast<basic_spanbuf<_CharT, _Traits>*>(std::__addressof(_M_sb)); } std::span<const _CharT> span() const noexcept { return _M_sb.span(); } void span(std::span<_CharT> __s) noexcept { return _M_sb.span(__s); } template<typename _Ros> requires ranges::borrowed_range<_Ros> && (!convertible_to<_Ros, std::span<_CharT>>) && convertible_to<_Ros, std::span<const _CharT>> void span(_Ros&& __s) noexcept { std::span<const _CharT> __sp(std::forward<_Ros>(__s)); _M_sb.span({const_cast<_CharT*>(__sp.data()), __sp.size()}); } private: basic_spanbuf<_CharT, _Traits> _M_sb; }; template<typename _CharT, typename _Traits> inline void swap(basic_ispanstream<_CharT, _Traits>& __x, basic_ispanstream<_CharT, _Traits>& __y) { __x.swap(__y); } using ispanstream = basic_ispanstream<char>; using wispanstream = basic_ispanstream<wchar_t>; template<typename _CharT, typename _Traits> class basic_ospanstream : public basic_ostream<_CharT, _Traits> { using __ostream_type = basic_ostream<_CharT, _Traits>; public: using char_type = _CharT; using int_type = typename _Traits::int_type; using pos_type = typename _Traits::pos_type; using off_type = typename _Traits::off_type; using traits_type = _Traits; // [ospanstream.ctor], constructors explicit basic_ospanstream(std::span<_CharT> __s, ios_base::openmode __which = ios_base::out) : __ostream_type(std::__addressof(_M_sb)), _M_sb(__s, __which | ios_base::in) { } basic_ospanstream(const basic_ospanstream&) = delete; basic_ospanstream(basic_ospanstream&& __rhs) : __ostream_type(std::move(__rhs)), _M_sb(std::move(__rhs._M_sb)) { __ostream_type::set_rdbuf(std::addressof(_M_sb)); } // [ospanstream.assign], assignment and swap basic_ospanstream& operator=(const basic_ospanstream&) = delete; basic_ospanstream& operator=(basic_ospanstream&& __rhs) = default; void swap(basic_ospanstream& __rhs) { __ostream_type::swap(__rhs); _M_sb.swap(__rhs._M_sb); } // [ospanstream.members], member functions basic_spanbuf<_CharT, _Traits>* rdbuf() const noexcept { return const_cast<basic_spanbuf<_CharT, _Traits>*>(std::__addressof(_M_sb)); } std::span<_CharT> span() const noexcept { return _M_sb.span(); } void span(std::span<_CharT> __s) noexcept { return _M_sb.span(__s); } private: basic_spanbuf<_CharT, _Traits> _M_sb; }; template<typename _CharT, typename _Traits> inline void swap(basic_ospanstream<_CharT, _Traits>& __x, basic_ospanstream<_CharT, _Traits>& __y) { __x.swap(__y); } using ospanstream = basic_ospanstream<char>; using wospanstream = basic_ospanstream<wchar_t>; template<typename _CharT, typename _Traits> class basic_spanstream : public basic_iostream<_CharT, _Traits> { using __iostream_type = basic_iostream<_CharT, _Traits>; public: using char_type = _CharT; using int_type = typename _Traits::int_type; using pos_type = typename _Traits::pos_type; using off_type = typename _Traits::off_type; using traits_type = _Traits; // [spanstream.ctor], constructors explicit basic_spanstream(std::span<_CharT> __s, ios_base::openmode __which = ios_base::out | ios_base::in) : __iostream_type(std::__addressof(_M_sb)), _M_sb(__s, __which) { } basic_spanstream(const basic_spanstream&) = delete; basic_spanstream(basic_spanstream&& __rhs) : __iostream_type(std::move(__rhs)), _M_sb(std::move(__rhs._M_sb)) { __iostream_type::set_rdbuf(std::addressof(_M_sb)); } // [spanstream.assign], assignment and swap basic_spanstream& operator=(const basic_spanstream&) = delete; basic_spanstream& operator=(basic_spanstream&& __rhs) = default; void swap(basic_spanstream& __rhs) { __iostream_type::swap(__rhs); _M_sb.swap(__rhs._M_sb); } // [spanstream.members], members basic_spanbuf<_CharT, _Traits>* rdbuf() const noexcept { return const_cast<basic_spanbuf<_CharT, _Traits>*>(std::__addressof(_M_sb)); } std::span<_CharT> span() const noexcept { return _M_sb.span(); } void span(std::span<_CharT> __s) noexcept { return _M_sb.span(__s); } private: basic_spanbuf<_CharT, _Traits> _M_sb; }; template<typename _CharT, typename _Traits> inline void swap(basic_spanstream<_CharT, _Traits>& __x, basic_spanstream<_CharT, _Traits>& __y) { __x.swap(__y); } using spanstream = basic_spanstream<char>; using wspanstream = basic_spanstream<wchar_t>; _GLIBCXX_END_NAMESPACE_VERSION } // namespace std #endif // __cpp_lib_span #endif // C++23 #endif // _GLIBCXX_SPANSTREAM