From 2946d1c928a6933c9f9b0544b58af61cdab36822 Mon Sep 17 00:00:00 2001
From: Gabor Greif
ilist has the same drawbacks as std::list, and additionally requires an -ilist_traits implementation for the element type, but it provides some novel -characteristics. In particular, it can efficiently store polymorphic objects, -the traits class is informed when an element is inserted or removed from the -list, and ilists are guaranteed to support a constant-time splice operation. -
+ilist has the same drawbacks as std::list, and additionally +requires an ilist_traits implementation for the element type, but it +provides some novel characteristics. In particular, it can efficiently store +polymorphic objects, the traits class is informed when an element is inserted or +removed from the list, and ilists are guaranteed to support a constant-time splice +operation.
-These properties are exactly what we want for things like Instructions and -basic blocks, which is why these are implemented with ilists.
+These properties are exactly what we want for things like Instructions +and basic blocks, which is why these are implemented with ilists.
Related classes of interest are explained in the following subsections: + +iplist<T> is ilist<T>'s base and as such +supports a slightly narrower interface. Notably, inserters from T& +are absent.
+