Duncan P. N. Exon Smith 9c80b35060 ADT: Split ilist_node_traits into alloc and callback, NFC
Many lists want to override only allocation semantics, or callbacks for
iplist.  Split these up to prevent code duplication.
- Specialize ilist_alloc_traits to change the implementations of
  deleteNode() and createNode().
- One common desire is to do nothing deleteNode() and disable
  createNode().  Specialize ilist_alloc_traits to inherit from
  ilist_noalloc_traits for that behaviour.
- Specialize ilist_callback_traits to use the addNodeToList(),
  removeNodeFromList(), and transferNodesFromList() callbacks.

As a drive-by, add some coverage to the callback-related unit tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@280128 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-30 18:40:47 +00:00
..
2016-06-30 18:25:11 +00:00
2016-06-21 19:48:12 +00:00
2016-08-22 11:55:22 +00:00
2016-08-22 11:55:22 +00:00
2016-08-22 11:55:22 +00:00
2015-10-05 12:07:05 +00:00
2016-08-22 11:55:22 +00:00
2016-08-22 11:55:22 +00:00
2016-08-22 11:55:22 +00:00