[llvm] 9b3c5cb - Update the ProgrammersManual explanation for ilist and iplist

Nathan Lanza via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 7 19:51:40 PDT 2022


Author: Nathan Lanza
Date: 2022-06-07T22:50:04-04:00
New Revision: 9b3c5cba9f71e0d7d81feec9260ce7aafec858a0

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

LOG: Update the ProgrammersManual explanation for ilist and iplist

They are now `using` aliases and thus the comments about iplist are now
incorrect. Remove them here.

Reviewed By: dexonsmith

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

Added: 
    

Modified: 
    llvm/docs/ProgrammersManual.rst

Removed: 
    


################################################################################
diff  --git a/llvm/docs/ProgrammersManual.rst b/llvm/docs/ProgrammersManual.rst
index f56a3a4aa4567..39219ad1d2b64 100644
--- a/llvm/docs/ProgrammersManual.rst
+++ b/llvm/docs/ProgrammersManual.rst
@@ -1705,6 +1705,9 @@ the traits class is informed when an element is inserted or removed from the
 list, and ``ilist``\ s are guaranteed to support a constant-time splice
 operation.
 
+An ``ilist`` and an ``iplist`` are ``using`` aliases to one another and the
+latter only currently exists for historical purposes.
+
 These properties are exactly what we want for things like ``Instruction``\ s and
 basic blocks, which is why these are implemented with ``ilist``\ s.
 
@@ -1712,8 +1715,6 @@ Related classes of interest are explained in the following subsections:
 
 * :ref:`ilist_traits <dss_ilist_traits>`
 
-* :ref:`iplist <dss_iplist>`
-
 * :ref:`llvm/ADT/ilist_node.h <dss_ilist_node>`
 
 * :ref:`Sentinels <dss_ilist_sentinel>`
@@ -1754,19 +1755,8 @@ For example:
 ilist_traits
 ^^^^^^^^^^^^
 
-``ilist_traits<T>`` is ``ilist<T>``'s customization mechanism. ``iplist<T>``
-(and consequently ``ilist<T>``) publicly derive from this traits class.
-
-.. _dss_iplist:
-
-iplist
-^^^^^^
-
-``iplist<T>`` is ``ilist<T>``'s base and as such supports a slightly narrower
-interface.  Notably, inserters from ``T&`` are absent.
-
-``ilist_traits<T>`` is a public base of this class and can be used for a wide
-variety of customizations.
+``ilist_traits<T>`` is ``ilist<T>``'s customization mechanism. ``ilist<T>``
+publicly derives from this traits class.
 
 .. _dss_ilist_node:
 


        


More information about the llvm-commits mailing list