class FoldingSetVector

Declaration

template <class T, class VectorT = SmallVector<T*, 8>>
class FoldingSetVector { /* full declaration omitted */ };

Description

FoldingSetVector - This template class combines a FoldingSet and a vector to provide the interface of FoldingSet but with deterministic iteration order based on the insertion order. T must be a subclass of FoldingSetNode and implement a Profile function.

Declared at: llvm/include/llvm/ADT/FoldingSet.h:558

Templates

T
VectorT = SmallVector<T *, 8>

Method Overview

Methods

T* FindNodeOrInsertPos(
    const llvm::FoldingSetNodeID& ID,
    void*& InsertPos)

Description

FindNodeOrInsertPos - Look up the node specified by ID. If it exists, return it. If not, return the insertion token that will make insertion faster.

Declared at: llvm/include/llvm/ADT/FoldingSet.h:581

Parameters

const llvm::FoldingSetNodeID& ID
void*& InsertPos

FoldingSetVector<T, VectorT>(
    unsigned int Log2InitSize = 6)

Declared at: llvm/include/llvm/ADT/FoldingSet.h:563

Parameters

unsigned int Log2InitSize = 6

T* GetOrInsertNode(T* N)

Description

GetOrInsertNode - If there is an existing simple Node exactly equal to the specified node, return it. Otherwise, insert 'N' and return it instead.

Declared at: llvm/include/llvm/ADT/FoldingSet.h:588

Parameters

T* N

void InsertNode(T* N, void* InsertPos)

Description

InsertNode - Insert the specified node into the folding set, knowing that it is not already in the folding set. InsertPos must be obtained from FindNodeOrInsertPos.

Declared at: llvm/include/llvm/ADT/FoldingSet.h:597

Parameters

T* N
void* InsertPos

void InsertNode(T* N)

Description

InsertNode - Insert the specified node into the folding set, knowing that it is not already in the folding set.

Declared at: llvm/include/llvm/ADT/FoldingSet.h:604

Parameters

T* N

int begin()

Declared at: llvm/include/llvm/ADT/FoldingSet.h:567

int begin() const

Declared at: llvm/include/llvm/ADT/FoldingSet.h:572

void clear()

Description

clear - Remove all nodes from the folding set.

Declared at: llvm/include/llvm/ADT/FoldingSet.h:576

bool empty() const

Description

empty - Returns true if there are no nodes in the folding set.

Declared at: llvm/include/llvm/ADT/FoldingSet.h:613

int end()

Declared at: llvm/include/llvm/ADT/FoldingSet.h:568

int end() const

Declared at: llvm/include/llvm/ADT/FoldingSet.h:573

unsigned int size() const

Description

size - Returns the number of nodes in the folding set.

Declared at: llvm/include/llvm/ADT/FoldingSet.h:610