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

Holds a DIExpression and keeps track of how many operands have been consumed so far. More...

#include "CodeGen/AsmPrinter/DwarfExpression.h"

Public Member Functions

 DIExpressionCursor (const DIExpression *Expr)
 
 DIExpressionCursor (ArrayRef< uint64_t > Expr)
 
 DIExpressionCursor (const DIExpressionCursor &)=default
 
Optional< DIExpression::ExprOperandtake ()
 Consume one operation. More...
 
void consume (unsigned N)
 Consume N operations. More...
 
Optional< DIExpression::ExprOperandpeek () const
 Return the current operation. More...
 
Optional< DIExpression::ExprOperandpeekNext () const
 Return the next operation. More...
 
 operator bool () const
 Determine whether there are any operations left in this expression. More...
 
DIExpression::expr_op_iterator begin () const
 
DIExpression::expr_op_iterator end () const
 
Optional< DIExpression::FragmentInfogetFragmentInfo () const
 Retrieve the fragment information, if any. More...
 

Detailed Description

Holds a DIExpression and keeps track of how many operands have been consumed so far.

Definition at line 37 of file DwarfExpression.h.

Constructor & Destructor Documentation

◆ DIExpressionCursor() [1/3]

llvm::DIExpressionCursor::DIExpressionCursor ( const DIExpression Expr)
inline

◆ DIExpressionCursor() [2/3]

llvm::DIExpressionCursor::DIExpressionCursor ( ArrayRef< uint64_t >  Expr)
inline

Definition at line 50 of file DwarfExpression.h.

References DIExpressionCursor().

◆ DIExpressionCursor() [3/3]

llvm::DIExpressionCursor::DIExpressionCursor ( const DIExpressionCursor )
default

Member Function Documentation

◆ begin()

DIExpression::expr_op_iterator llvm::DIExpressionCursor::begin ( ) const
inline

Definition at line 87 of file DwarfExpression.h.

◆ consume()

void llvm::DIExpressionCursor::consume ( unsigned  N)
inline

Consume N operations.

Definition at line 63 of file DwarfExpression.h.

Referenced by llvm::DwarfExpression::addMachineRegExpression().

◆ end()

DIExpression::expr_op_iterator llvm::DIExpressionCursor::end ( ) const
inline

Definition at line 88 of file DwarfExpression.h.

◆ getFragmentInfo()

Optional<DIExpression::FragmentInfo> llvm::DIExpressionCursor::getFragmentInfo ( ) const
inline

Retrieve the fragment information, if any.

Definition at line 91 of file DwarfExpression.h.

References llvm::DIExpression::getFragmentInfo().

Referenced by llvm::DwarfExpression::addMachineRegExpression().

◆ operator bool()

llvm::DIExpressionCursor::operator bool ( ) const
inline

Determine whether there are any operations left in this expression.

Definition at line 85 of file DwarfExpression.h.

◆ peek()

Optional<DIExpression::ExprOperand> llvm::DIExpressionCursor::peek ( ) const
inline

Return the current operation.

Definition at line 66 of file DwarfExpression.h.

References llvm::None.

Referenced by llvm::DwarfExpression::addMachineRegExpression().

◆ peekNext()

Optional<DIExpression::ExprOperand> llvm::DIExpressionCursor::peekNext ( ) const
inline

Return the next operation.

Definition at line 73 of file DwarfExpression.h.

References llvm::DIExpression::expr_op_iterator::getNext(), and llvm::None.

Referenced by llvm::DwarfExpression::addMachineRegExpression().

◆ take()

Optional<DIExpression::ExprOperand> llvm::DIExpressionCursor::take ( )
inline

Consume one operation.

Definition at line 56 of file DwarfExpression.h.

References llvm::None.

Referenced by llvm::DwarfExpression::addMachineRegExpression(), and isMemoryLocation().


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