LLVM 20.0.0git
Classes | Public Member Functions | Friends | List of all members
llvm::LazyCallGraph::EdgeSequence Class Reference

The edge sequence object. More...

#include "llvm/Analysis/LazyCallGraph.h"

Classes

class  call_iterator
 An iterator over specifically call edges. More...
 
class  iterator
 An iterator used for the edges to both entry nodes and child nodes. More...
 

Public Member Functions

iterator begin ()
 
iterator end ()
 
Edgeoperator[] (Node &N)
 
Edgelookup (Node &N)
 
call_iterator call_begin ()
 
call_iterator call_end ()
 
iterator_range< call_iteratorcalls ()
 
bool empty ()
 

Friends

class LazyCallGraph
 
class LazyCallGraph::Node
 
class LazyCallGraph::RefSCC
 

Detailed Description

The edge sequence object.

This typically exists entirely within the node but is exposed as a separate type because a node doesn't initially have edges. An explicit population step is required to produce this sequence at first and it is then cached in the node. It is also used to represent edges entering the graph from outside the module to model the graph's roots.

The sequence itself both iterable and indexable. The indexes remain stable even as the sequence mutates (including removal).

Definition at line 178 of file LazyCallGraph.h.

Member Function Documentation

◆ begin()

iterator llvm::LazyCallGraph::EdgeSequence::begin ( )
inline

◆ call_begin()

call_iterator llvm::LazyCallGraph::EdgeSequence::call_begin ( )
inline

◆ call_end()

call_iterator llvm::LazyCallGraph::EdgeSequence::call_end ( )
inline

Definition at line 271 of file LazyCallGraph.h.

References llvm::SmallVectorTemplateCommon< T, typename >::end().

Referenced by calls().

◆ calls()

iterator_range< call_iterator > llvm::LazyCallGraph::EdgeSequence::calls ( )
inline

Definition at line 273 of file LazyCallGraph.h.

References call_begin(), call_end(), and llvm::make_range().

◆ empty()

bool llvm::LazyCallGraph::EdgeSequence::empty ( )
inline

◆ end()

iterator llvm::LazyCallGraph::EdgeSequence::end ( )
inline

◆ lookup()

Edge * llvm::LazyCallGraph::EdgeSequence::lookup ( Node N)
inline

Definition at line 260 of file LazyCallGraph.h.

References E, and N.

Referenced by llvm::LazyCallGraph::addSplitRefRecursiveFunctions().

◆ operator[]()

Edge & llvm::LazyCallGraph::EdgeSequence::operator[] ( Node N)
inline

Definition at line 253 of file LazyCallGraph.h.

References assert(), E, and N.

Friends And Related Function Documentation

◆ LazyCallGraph

friend class LazyCallGraph
friend

Definition at line 179 of file LazyCallGraph.h.

◆ LazyCallGraph::Node

friend class LazyCallGraph::Node
friend

Definition at line 180 of file LazyCallGraph.h.

◆ LazyCallGraph::RefSCC

friend class LazyCallGraph::RefSCC
friend

Definition at line 181 of file LazyCallGraph.h.


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