[libcxx-commits] [libcxx] f793597 - [libc++] <sstream>: update references to standard paragraphs

Louis Dionne via libcxx-commits libcxx-commits at lists.llvm.org
Thu Oct 13 04:23:44 PDT 2022


Author: Rupert Nash
Date: 2022-10-13T07:23:22-04:00
New Revision: f793597f6d5d8eb86388263ce16365ceb10fee23

URL: https://github.com/llvm/llvm-project/commit/f793597f6d5d8eb86388263ce16365ceb10fee23
DIFF: https://github.com/llvm/llvm-project/commit/f793597f6d5d8eb86388263ce16365ceb10fee23.diff

LOG: [libc++] <sstream>: update references to standard paragraphs

The paragraph numbers used previously did not match the C++20 nor
C++17 standards. I have updated them to the textual dotted names to
avoid this problem in future.

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D135861

Added: 
    

Modified: 
    libcxx/include/sstream

Removed: 
    


################################################################################
diff  --git a/libcxx/include/sstream b/libcxx/include/sstream
index 3bd5663517590..91d1a07353aa4 100644
--- a/libcxx/include/sstream
+++ b/libcxx/include/sstream
@@ -11,8 +11,9 @@
 #define _LIBCPP_SSTREAM
 
 /*
-    sstream synopsis
+    sstream synopsis [sstream.syn]
 
+// Class template basic_stringbuf [stringbuf]
 template <class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
 class basic_stringbuf
     : public basic_streambuf<charT, traits>
@@ -25,7 +26,7 @@ public:
     typedef typename traits_type::off_type off_type;
     typedef Allocator                      allocator_type;
 
-    // 27.8.1.1 [stringbuf.cons], constructors:
+    // [stringbuf.cons] constructors:
     explicit basic_stringbuf(ios_base::openmode which = ios_base::in | ios_base::out); // before C++20
     basic_stringbuf() : basic_stringbuf(ios_base::in | ios_base::out) {}               // C++20
     explicit basic_stringbuf(ios_base::openmode which);                                // C++20
@@ -33,16 +34,16 @@ public:
                              ios_base::openmode which = ios_base::in | ios_base::out);
     basic_stringbuf(basic_stringbuf&& rhs);
 
-    // 27.8.1.2 Assign and swap:
+    // [stringbuf.assign] Assign and swap:
     basic_stringbuf& operator=(basic_stringbuf&& rhs);
     void swap(basic_stringbuf& rhs);
 
-    // 27.8.1.3 Get and set:
+    // [stringbuf.members] Member functions:
     basic_string<char_type, traits_type, allocator_type> str() const;
     void str(const basic_string<char_type, traits_type, allocator_type>& s);
 
 protected:
-    // 27.8.1.4 Overridden virtual functions:
+    // [stringbuf.virtuals] Overridden virtual functions:
     virtual int_type underflow();
     virtual int_type pbackfail(int_type c = traits_type::eof());
     virtual int_type overflow (int_type c = traits_type::eof());
@@ -53,6 +54,7 @@ protected:
                              ios_base::openmode which = ios_base::in | ios_base::out);
 };
 
+// [stringbuf.assign] non member swap
 template <class charT, class traits, class Allocator>
   void swap(basic_stringbuf<charT, traits, Allocator>& x,
             basic_stringbuf<charT, traits, Allocator>& y);
@@ -60,6 +62,7 @@ template <class charT, class traits, class Allocator>
 typedef basic_stringbuf<char>    stringbuf;
 typedef basic_stringbuf<wchar_t> wstringbuf;
 
+// Class template basic_istringstream [istringstream]
 template <class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
 class basic_istringstream
     : public basic_istream<charT, traits>
@@ -72,7 +75,7 @@ public:
     typedef typename traits_type::off_type off_type;
     typedef Allocator                      allocator_type;
 
-    // 27.8.2.1 Constructors:
+    // [istringstream.cons] Constructors:
     explicit basic_istringstream(ios_base::openmode which = ios_base::in); // before C++20
     basic_istringstream() : basic_istringstream(ios_base::in) {}           // C++20
     explicit basic_istringstream(ios_base::openmode which);                // C++20
@@ -81,11 +84,11 @@ public:
                                  ios_base::openmode which = ios_base::in);
     basic_istringstream(basic_istringstream&& rhs);
 
-    // 27.8.2.2 Assign and swap:
+    // [istringstream.assign] Assign and swap:
     basic_istringstream& operator=(basic_istringstream&& rhs);
     void swap(basic_istringstream& rhs);
 
-    // 27.8.2.3 Members:
+    // [istringstream.members] Member functions:
     basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const;
     basic_string<char_type, traits_type, allocator_type> str() const;
     void str(const basic_string<char_type, traits_type, allocator_type>& s);
@@ -98,6 +101,7 @@ template <class charT, class traits, class Allocator>
 typedef basic_istringstream<char>    istringstream;
 typedef basic_istringstream<wchar_t> wistringstream;
 
+// Class template basic_ostringstream [ostringstream]
 template <class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
 class basic_ostringstream
     : public basic_ostream<charT, traits>
@@ -111,7 +115,7 @@ public:
     typedef typename traits_type::off_type off_type;
     typedef Allocator                      allocator_type;
 
-    // 27.8.3.1 Constructors/destructor:
+    // [ostringstream.cons] Constructors:
     explicit basic_ostringstream(ios_base::openmode which = ios_base::out); // before C++20
     basic_ostringstream() : basic_ostringstream(ios_base::out) {}           // C++20
     explicit basic_ostringstream(ios_base::openmode which);                 // C++20
@@ -120,11 +124,11 @@ public:
                                  ios_base::openmode which = ios_base::out);
     basic_ostringstream(basic_ostringstream&& rhs);
 
-    // 27.8.3.2 Assign/swap:
+    // [ostringstream.assign] Assign and swap:
     basic_ostringstream& operator=(basic_ostringstream&& rhs);
     void swap(basic_ostringstream& rhs);
 
-    // 27.8.3.3 Members:
+    // [ostringstream.members] Member functions:
     basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const;
     basic_string<char_type, traits_type, allocator_type> str() const;
     void str(const basic_string<char_type, traits_type, allocator_type>& s);
@@ -137,6 +141,7 @@ template <class charT, class traits, class Allocator>
 typedef basic_ostringstream<char>    ostringstream;
 typedef basic_ostringstream<wchar_t> wostringstream;
 
+// Class template basic_stringstream [stringstream]
 template <class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
 class basic_stringstream
     : public basic_iostream<charT, traits>
@@ -150,7 +155,7 @@ public:
     typedef typename traits_type::off_type off_type;
     typedef Allocator                      allocator_type;
 
-    // constructors/destructor
+    // [stringstream.cons] constructors
     explicit basic_stringstream(ios_base::openmode which = ios_base::out | ios_base::in); // before C++20
     basic_stringstream() : basic_stringstream(ios_base::out | ios_base::in) {}            // C++20
     explicit basic_stringstream(ios_base::openmode which);                                // C++20
@@ -159,11 +164,11 @@ public:
                                 ios_base::openmode which = ios_base::out|ios_base::in);
     basic_stringstream(basic_stringstream&& rhs);
 
-    // 27.8.5.1 Assign/swap:
+    // [stringstream.assign] Assign and swap:
     basic_stringstream& operator=(basic_stringstream&& rhs);
     void swap(basic_stringstream& rhs);
 
-    // Members:
+    // [stringstream.members] Member functions:
     basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const;
     basic_string<char_type, traits_type, allocator_type> str() const;
     void str(const basic_string<char_type, traits_type, allocator_type>& str);
@@ -198,7 +203,7 @@ _LIBCPP_PUSH_MACROS
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
-// basic_stringbuf
+// Class template basic_stringbuf [stringbuf]
 
 template <class _CharT, class _Traits, class _Allocator>
 class _LIBCPP_TEMPLATE_VIS basic_stringbuf
@@ -221,7 +226,7 @@ private:
     ios_base::openmode __mode_;
 
 public:
-    // 30.8.2.1 [stringbuf.cons], constructors
+    // [stringbuf.cons] constructors:
     _LIBCPP_INLINE_VISIBILITY
     basic_stringbuf()
         : __hm_(nullptr), __mode_(ios_base::in | ios_base::out) {}
@@ -240,16 +245,16 @@ public:
 
     basic_stringbuf(basic_stringbuf&& __rhs);
 
-    // 27.8.1.2 Assign and swap:
+    // [stringbuf.assign] Assign and swap:
     basic_stringbuf& operator=(basic_stringbuf&& __rhs);
     void swap(basic_stringbuf& __rhs);
 
-    // 27.8.1.3 Get and set:
+    // [stringbuf.members] Member functions:
     string_type str() const;
     void str(const string_type& __s);
 
 protected:
-    // 27.8.1.4 Overridden virtual functions:
+    // [stringbuf.virtuals] Overridden virtual functions:
     int_type underflow() override;
     int_type pbackfail(int_type __c = traits_type::eof()) override;
     int_type overflow (int_type __c = traits_type::eof()) override;
@@ -619,7 +624,7 @@ basic_stringbuf<_CharT, _Traits, _Allocator>::seekoff(off_type __off,
     return pos_type(__noff);
 }
 
-// basic_istringstream
+// Class template basic_istringstream [istringstream]
 
 template <class _CharT, class _Traits, class _Allocator>
 class _LIBCPP_TEMPLATE_VIS basic_istringstream
@@ -639,7 +644,7 @@ private:
     basic_stringbuf<char_type, traits_type, allocator_type> __sb_;
 
 public:
-    // 30.8.3.1 [istringstream.cons], constructors
+    // [istringstream.cons] Constructors:
     _LIBCPP_INLINE_VISIBILITY
     basic_istringstream()
         : basic_istream<_CharT, _Traits>(&__sb_), __sb_(ios_base::in) {}
@@ -663,7 +668,7 @@ public:
         basic_istream<_CharT, _Traits>::set_rdbuf(&__sb_);
     }
 
-    // 27.8.2.2 Assign and swap:
+    // [istringstream.assign] Assign and swap:
     basic_istringstream& operator=(basic_istringstream&& __rhs) {
         basic_istream<char_type, traits_type>::operator=(_VSTD::move(__rhs));
         __sb_ = _VSTD::move(__rhs.__sb_);
@@ -675,7 +680,7 @@ public:
         __sb_.swap(__rhs.__sb_);
     }
 
-    // 27.8.2.3 Members:
+    // [istringstream.members] Member functions:
     _LIBCPP_INLINE_VISIBILITY
     basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const {
         return const_cast<basic_stringbuf<char_type, traits_type, allocator_type>*>(&__sb_);
@@ -699,7 +704,7 @@ swap(basic_istringstream<_CharT, _Traits, _Allocator>& __x,
     __x.swap(__y);
 }
 
-// basic_ostringstream
+// Class template basic_ostringstream [ostringstream]
 
 template <class _CharT, class _Traits, class _Allocator>
 class _LIBCPP_TEMPLATE_VIS basic_ostringstream
@@ -719,7 +724,7 @@ private:
     basic_stringbuf<char_type, traits_type, allocator_type> __sb_;
 
 public:
-    // 30.8.4.1 [ostringstream.cons], constructors
+    // [ostringstream.cons] Constructors:
     _LIBCPP_INLINE_VISIBILITY
     basic_ostringstream()
         : basic_ostream<_CharT, _Traits>(&__sb_), __sb_(ios_base::out) {}
@@ -743,7 +748,7 @@ public:
         basic_ostream<_CharT, _Traits>::set_rdbuf(&__sb_);
     }
 
-    // 27.8.2.2 Assign and swap:
+    // [ostringstream.assign] Assign and swap:
     basic_ostringstream& operator=(basic_ostringstream&& __rhs) {
         basic_ostream<char_type, traits_type>::operator=(_VSTD::move(__rhs));
         __sb_ = _VSTD::move(__rhs.__sb_);
@@ -756,7 +761,7 @@ public:
         __sb_.swap(__rhs.__sb_);
     }
 
-    // 27.8.2.3 Members:
+    // [ostringstream.members] Member functions:
     _LIBCPP_INLINE_VISIBILITY
     basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const {
         return const_cast<basic_stringbuf<char_type, traits_type, allocator_type>*>(&__sb_);
@@ -780,7 +785,7 @@ swap(basic_ostringstream<_CharT, _Traits, _Allocator>& __x,
     __x.swap(__y);
 }
 
-// basic_stringstream
+// Class template basic_stringstream [stringstream]
 
 template <class _CharT, class _Traits, class _Allocator>
 class _LIBCPP_TEMPLATE_VIS basic_stringstream
@@ -800,7 +805,7 @@ private:
     basic_stringbuf<char_type, traits_type, allocator_type> __sb_;
 
 public:
-    // 30.8.5.1 [stringstream.cons], constructors
+    // [stringstream.cons] constructors
     _LIBCPP_INLINE_VISIBILITY
     basic_stringstream()
         : basic_iostream<_CharT, _Traits>(&__sb_), __sb_(ios_base::in | ios_base::out) {}
@@ -824,7 +829,7 @@ public:
         basic_istream<_CharT, _Traits>::set_rdbuf(&__sb_);
     }
 
-    // 27.8.2.2 Assign and swap:
+    // [stringstream.assign] Assign and swap:
     basic_stringstream& operator=(basic_stringstream&& __rhs) {
         basic_iostream<char_type, traits_type>::operator=(_VSTD::move(__rhs));
         __sb_ = _VSTD::move(__rhs.__sb_);
@@ -836,7 +841,7 @@ public:
         __sb_.swap(__rhs.__sb_);
     }
 
-    // 27.8.2.3 Members:
+    // [stringstream.members] Member functions:
     _LIBCPP_INLINE_VISIBILITY
     basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const {
         return const_cast<basic_stringbuf<char_type, traits_type, allocator_type>*>(&__sb_);


        


More information about the libcxx-commits mailing list