[#llvm-FoldingSetVector] = xref:llvm.adoc[llvm]::FoldingSetVector :relfileprefix: ../ :mrdocs: FoldingSet with deterministic insertion‐order iteration. == Synopsis Declared in `<llvm/ADT/FoldingSet.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class T, class VectorT = xref:llvm/SmallVector-06.adoc[SmallVector<T*, 8>]> class FoldingSetVector; ---- == Description Combines a FoldingSet and a vector. T must be a FoldingSetNode subclass and implement a Profile function. == Type Aliases [cols="1,4"] |=== | Name| Description | xref:llvm/FoldingSetVector/const_iterator.adoc[`const_iterator`] | Const iterator over nodes in insertion order. | xref:llvm/FoldingSetVector/iterator.adoc[`iterator`] | Iterator over nodes in insertion order. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:llvm/FoldingSetVector/2constructor.adoc[`FoldingSetVector`] [.small]#[constructor]# | Construct an empty FoldingSetVector with 2ˆLog2InitSize buckets. | xref:llvm/FoldingSetVector/FindNodeOrInsertPos.adoc[`FindNodeOrInsertPos`] | Look up the node specified by ID. If it exists, return it. If not, return the insertion token that will make insertion faster. | xref:llvm/FoldingSetVector/GetOrInsertNode.adoc[`GetOrInsertNode`] | If there is an existing node exactly equal to the specified node, return it. Otherwise, insert 'N' and return it instead. | xref:llvm/FoldingSetVector/InsertNode-03.adoc[`InsertNode`] | `InsertNode` overloads | xref:llvm/FoldingSetVector/begin-08.adoc[`begin`] | `begin` overloads | xref:llvm/FoldingSetVector/clear.adoc[`clear`] | Remove all nodes from the folding set. | xref:llvm/FoldingSetVector/empty.adoc[`empty`] | Returns true if there are no nodes in the folding set. | xref:llvm/FoldingSetVector/end-02.adoc[`end`] | `end` overloads | xref:llvm/FoldingSetVector/size.adoc[`size`] | Returns the number of nodes in the folding set. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#