学习 LLVM(10) ilist.h
位于 llvm/include/llvm/[[ADT]]/ilist.h == 简介 == 主要实现侵入式链接列表模板(Intrusive Linked List Template),实际是双向的列表。 主要类是 iplist, ilist 用于实现 列表模板。 其它是主要类的辅助的 iterator, traits 的实现。 这个文件定义类用于实现一个侵入式(intrusive)双向链接列表,也即列表中每个元素节点必须包含一个 next 和 previous 字段来作为链表指针。 This file defines classes to implement an intrusive doubly linked list class(i.e. each node of the list must contain a next and previous field for the list. == 实现的类 == * ilist_nextprev_traits -- 提供 T 类型缺省 get|set Prev|Next 访问策略。 * ilist_sentinel_traits -- 哨兵(sentinel)节点新建、删除、访问策略。 * ilist_node_traits -- 节点缺省操作策略实现。 * ilist_default_traits -- 缺省的 next,prev