LLVM 20.0.0git
Public Types | Public Member Functions | List of all members
llvm::sandboxir::BBIterator Class Reference

Iterator for Instructions in a `BasicBlock. More...

#include "llvm/SandboxIR/BasicBlock.h"

Public Types

using difference_type = std::ptrdiff_t
 
using value_type = Instruction
 
using pointer = value_type *
 
using reference = value_type &
 
using iterator_category = std::bidirectional_iterator_tag
 

Public Member Functions

 BBIterator ()
 
 BBIterator (llvm::BasicBlock *BB, llvm::BasicBlock::iterator It, Context *Ctx)
 
reference operator* () const
 
BBIteratoroperator++ ()
 
BBIterator operator++ (int)
 
BBIteratoroperator-- ()
 
BBIterator operator-- (int)
 
bool operator== (const BBIterator &Other) const
 
bool operator!= (const BBIterator &Other) const
 
pointer get () const
 \Returns the SBInstruction that corresponds to this iterator, or null if the instruction is not found in the IR-to-SandboxIR tables.
 
BasicBlockgetNodeParent () const
 \Returns the parent BB.
 

Detailed Description

Iterator for Instructions in a `BasicBlock.

\Returns an sandboxir::Instruction & when derereferenced.

Definition at line 23 of file BasicBlock.h.

Member Typedef Documentation

◆ difference_type

Definition at line 25 of file BasicBlock.h.

◆ iterator_category

using llvm::sandboxir::BBIterator::iterator_category = std::bidirectional_iterator_tag

Definition at line 29 of file BasicBlock.h.

◆ pointer

Definition at line 27 of file BasicBlock.h.

◆ reference

Definition at line 28 of file BasicBlock.h.

◆ value_type

Definition at line 26 of file BasicBlock.h.

Constructor & Destructor Documentation

◆ BBIterator() [1/2]

llvm::sandboxir::BBIterator::BBIterator ( )
inline

Definition at line 38 of file BasicBlock.h.

◆ BBIterator() [2/2]

llvm::sandboxir::BBIterator::BBIterator ( llvm::BasicBlock BB,
llvm::BasicBlock::iterator  It,
Context Ctx 
)
inline

Definition at line 39 of file BasicBlock.h.

Member Function Documentation

◆ get()

pointer llvm::sandboxir::BBIterator::get ( ) const
inline

\Returns the SBInstruction that corresponds to this iterator, or null if the instruction is not found in the IR-to-SandboxIR tables.

Definition at line 61 of file BasicBlock.h.

◆ getNodeParent()

BasicBlock * llvm::sandboxir::BBIterator::getNodeParent ( ) const

◆ operator!=()

bool llvm::sandboxir::BBIterator::operator!= ( const BBIterator Other) const
inline

Definition at line 58 of file BasicBlock.h.

References llvm::Other.

◆ operator*()

reference llvm::sandboxir::BBIterator::operator* ( ) const
inline

Definition at line 41 of file BasicBlock.h.

◆ operator++() [1/2]

BBIterator & llvm::sandboxir::BBIterator::operator++ ( )

◆ operator++() [2/2]

BBIterator llvm::sandboxir::BBIterator::operator++ ( int  )
inline

Definition at line 43 of file BasicBlock.h.

◆ operator--() [1/2]

BBIterator & llvm::sandboxir::BBIterator::operator-- ( )

Definition at line 29 of file BasicBlock.cpp.

References assert(), and llvm::BasicBlock::begin().

◆ operator--() [2/2]

BBIterator llvm::sandboxir::BBIterator::operator-- ( int  )
inline

Definition at line 49 of file BasicBlock.h.

◆ operator==()

bool llvm::sandboxir::BBIterator::operator== ( const BBIterator Other) const
inline

Definition at line 54 of file BasicBlock.h.

References assert(), and llvm::Other.


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