LLVM 19.0.0git
Classes | Public Types | Public Member Functions | List of all members
llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet Class Reference

#include "Target/X86/ImmutableGraph.h"

Classes

class  iterator
 

Public Types

using index_iterator = typename BitVector::const_set_bits_iterator
 

Public Member Functions

 NodeSet (const ImmutableGraph &G, bool ContainsAll=false)
 
bool insert (const Node &N)
 
void erase (const Node &N)
 
bool contains (const Node &N) const
 
void clear ()
 
size_type empty () const
 
size_type count () const
 Return the number of elements in the set.
 
size_type size () const
 Return the size of the set's domain.
 
NodeSetoperator|= (const NodeSet &RHS)
 Set union.
 
NodeSetoperator&= (const NodeSet &RHS)
 Set intersection.
 
NodeSetoperator^= (const NodeSet &RHS)
 Set disjoint union.
 
index_iterator index_begin () const
 
index_iterator index_end () const
 
void set (size_type Idx)
 
void reset (size_type Idx)
 
iterator begin () const
 
iterator end () const
 

Detailed Description

template<typename NodeValueT, typename EdgeValueT>
class llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet

Definition at line 111 of file ImmutableGraph.h.

Member Typedef Documentation

◆ index_iterator

template<typename NodeValueT , typename EdgeValueT >
using llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::index_iterator = typename BitVector::const_set_bits_iterator

Definition at line 157 of file ImmutableGraph.h.

Constructor & Destructor Documentation

◆ NodeSet()

template<typename NodeValueT , typename EdgeValueT >
llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::NodeSet ( const ImmutableGraph G,
bool  ContainsAll = false 
)
inline

Definition at line 116 of file ImmutableGraph.h.

References G.

Member Function Documentation

◆ begin()

template<typename NodeValueT , typename EdgeValueT >
iterator llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::begin ( ) const
inline

Definition at line 195 of file ImmutableGraph.h.

◆ clear()

template<typename NodeValueT , typename EdgeValueT >
void llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::clear ( )
inline

Definition at line 132 of file ImmutableGraph.h.

◆ contains()

template<typename NodeValueT , typename EdgeValueT >
bool llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::contains ( const Node N) const
inline

Definition at line 128 of file ImmutableGraph.h.

References G, Idx, and N.

◆ count()

template<typename NodeValueT , typename EdgeValueT >
size_type llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::count ( ) const
inline

Return the number of elements in the set.

Definition at line 135 of file ImmutableGraph.h.

◆ empty()

template<typename NodeValueT , typename EdgeValueT >
size_type llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::empty ( ) const
inline

Definition at line 133 of file ImmutableGraph.h.

◆ end()

template<typename NodeValueT , typename EdgeValueT >
iterator llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::end ( ) const
inline

Definition at line 196 of file ImmutableGraph.h.

◆ erase()

template<typename NodeValueT , typename EdgeValueT >
void llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::erase ( const Node N)
inline

Definition at line 124 of file ImmutableGraph.h.

References G, Idx, and N.

◆ index_begin()

template<typename NodeValueT , typename EdgeValueT >
index_iterator llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::index_begin ( ) const
inline

Definition at line 158 of file ImmutableGraph.h.

◆ index_end()

template<typename NodeValueT , typename EdgeValueT >
index_iterator llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::index_end ( ) const
inline

Definition at line 159 of file ImmutableGraph.h.

◆ insert()

template<typename NodeValueT , typename EdgeValueT >
bool llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::insert ( const Node N)
inline

Definition at line 118 of file ImmutableGraph.h.

References G, Idx, and N.

◆ operator&=()

template<typename NodeValueT , typename EdgeValueT >
NodeSet & llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::operator&= ( const NodeSet RHS)
inline

Set intersection.

Definition at line 145 of file ImmutableGraph.h.

References assert(), and RHS.

◆ operator^=()

template<typename NodeValueT , typename EdgeValueT >
NodeSet & llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::operator^= ( const NodeSet RHS)
inline

Set disjoint union.

Definition at line 151 of file ImmutableGraph.h.

References assert(), and RHS.

◆ operator|=()

template<typename NodeValueT , typename EdgeValueT >
NodeSet & llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::operator|= ( const NodeSet RHS)
inline

Set union.

Definition at line 139 of file ImmutableGraph.h.

References assert(), and RHS.

◆ reset()

template<typename NodeValueT , typename EdgeValueT >
void llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::reset ( size_type  Idx)
inline

Definition at line 161 of file ImmutableGraph.h.

References Idx.

◆ set()

template<typename NodeValueT , typename EdgeValueT >
void llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::set ( size_type  Idx)
inline

Definition at line 160 of file ImmutableGraph.h.

References Idx.

◆ size()

template<typename NodeValueT , typename EdgeValueT >
size_type llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::size ( ) const
inline

Return the size of the set's domain.

Definition at line 137 of file ImmutableGraph.h.


The documentation for this class was generated from the following file: