LLVM  8.0.1
Public Member Functions | List of all members
llvm::DIExpression::expr_op_iterator Class Reference

An iterator for expression operands. More...

#include "llvm/IR/DebugInfoMetadata.h"

Inheritance diagram for llvm::DIExpression::expr_op_iterator:
Inheritance graph
[legend]
Collaboration diagram for llvm::DIExpression::expr_op_iterator:
Collaboration graph
[legend]

Public Member Functions

 expr_op_iterator ()=default
 
 expr_op_iterator (element_iterator I)
 
element_iterator getBase () const
 
const ExprOperandoperator* () const
 
const ExprOperandoperator-> () const
 
expr_op_iteratoroperator++ ()
 
expr_op_iterator operator++ (int)
 
expr_op_iterator getNext () const
 Get the next iterator. More...
 
bool operator== (const expr_op_iterator &X) const
 
bool operator!= (const expr_op_iterator &X) const
 

Detailed Description

An iterator for expression operands.

Definition at line 2419 of file DebugInfoMetadata.h.

Constructor & Destructor Documentation

◆ expr_op_iterator() [1/2]

llvm::DIExpression::expr_op_iterator::expr_op_iterator ( )
default

◆ expr_op_iterator() [2/2]

llvm::DIExpression::expr_op_iterator::expr_op_iterator ( element_iterator  I)
inlineexplicit

Definition at line 2425 of file DebugInfoMetadata.h.

Member Function Documentation

◆ getBase()

element_iterator llvm::DIExpression::expr_op_iterator::getBase ( ) const
inline

Definition at line 2427 of file DebugInfoMetadata.h.

References llvm::DIExpression::ExprOperand::get().

Referenced by operator!=(), and operator==().

◆ getNext()

expr_op_iterator llvm::DIExpression::expr_op_iterator::getNext ( ) const
inline

Get the next iterator.

std::next() doesn't work because this is technically an input_iterator, but it's a perfectly valid operation. This is an accessor to provide the same functionality.

Definition at line 2446 of file DebugInfoMetadata.h.

Referenced by llvm::DIExpressionCursor::peekNext().

◆ operator!=()

bool llvm::DIExpression::expr_op_iterator::operator!= ( const expr_op_iterator X) const
inline

Definition at line 2451 of file DebugInfoMetadata.h.

References getBase(), and llvm::DIExpression::ExprOperand::getSize().

◆ operator*()

const ExprOperand& llvm::DIExpression::expr_op_iterator::operator* ( ) const
inline

Definition at line 2428 of file DebugInfoMetadata.h.

◆ operator++() [1/2]

expr_op_iterator& llvm::DIExpression::expr_op_iterator::operator++ ( )
inline

Definition at line 2431 of file DebugInfoMetadata.h.

◆ operator++() [2/2]

expr_op_iterator llvm::DIExpression::expr_op_iterator::operator++ ( int  )
inline

Definition at line 2435 of file DebugInfoMetadata.h.

References T.

◆ operator->()

const ExprOperand* llvm::DIExpression::expr_op_iterator::operator-> ( ) const
inline

Definition at line 2429 of file DebugInfoMetadata.h.

◆ operator==()

bool llvm::DIExpression::expr_op_iterator::operator== ( const expr_op_iterator X) const
inline

Definition at line 2448 of file DebugInfoMetadata.h.

References getBase().


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