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

Pointer to the context, with optional RAUW support. More...

#include "llvm/IR/Metadata.h"

Public Member Functions

 ContextAndReplaceableUses (LLVMContext &Context)
 
 ContextAndReplaceableUses (std::unique_ptr< ReplaceableMetadataImpl > ReplaceableUses)
 
 ContextAndReplaceableUses ()=delete
 
 ContextAndReplaceableUses (ContextAndReplaceableUses &&)=delete
 
 ContextAndReplaceableUses (const ContextAndReplaceableUses &)=delete
 
ContextAndReplaceableUsesoperator= (ContextAndReplaceableUses &&)=delete
 
ContextAndReplaceableUsesoperator= (const ContextAndReplaceableUses &)=delete
 
 ~ContextAndReplaceableUses ()
 
 operator LLVMContext & ()
 
bool hasReplaceableUses () const
 Whether this contains RAUW support. More...
 
LLVMContextgetContext () const
 
ReplaceableMetadataImplgetReplaceableUses () const
 
ReplaceableMetadataImplgetOrCreateReplaceableUses ()
 Ensure that this has RAUW support, and then return it. More...
 
void makeReplaceable (std::unique_ptr< ReplaceableMetadataImpl > ReplaceableUses)
 Assign RAUW support to this. More...
 
std::unique_ptr< ReplaceableMetadataImpltakeReplaceableUses ()
 Drop RAUW support. More...
 

Detailed Description

Pointer to the context, with optional RAUW support.

Either a raw (non-null) pointer to the LLVMContext, or an owned pointer to ReplaceableMetadataImpl (which has a reference to LLVMContext).

Definition at line 770 of file Metadata.h.

Constructor & Destructor Documentation

◆ ContextAndReplaceableUses() [1/5]

llvm::ContextAndReplaceableUses::ContextAndReplaceableUses ( LLVMContext Context)
inline

Definition at line 774 of file Metadata.h.

◆ ContextAndReplaceableUses() [2/5]

llvm::ContextAndReplaceableUses::ContextAndReplaceableUses ( std::unique_ptr< ReplaceableMetadataImpl ReplaceableUses)
inline

Definition at line 775 of file Metadata.h.

References assert().

◆ ContextAndReplaceableUses() [3/5]

llvm::ContextAndReplaceableUses::ContextAndReplaceableUses ( )
delete

◆ ContextAndReplaceableUses() [4/5]

llvm::ContextAndReplaceableUses::ContextAndReplaceableUses ( ContextAndReplaceableUses &&  )
delete

◆ ContextAndReplaceableUses() [5/5]

llvm::ContextAndReplaceableUses::ContextAndReplaceableUses ( const ContextAndReplaceableUses )
delete

◆ ~ContextAndReplaceableUses()

llvm::ContextAndReplaceableUses::~ContextAndReplaceableUses ( )
inline

Definition at line 786 of file Metadata.h.

Member Function Documentation

◆ getContext()

LLVMContext& llvm::ContextAndReplaceableUses::getContext ( ) const
inline

Definition at line 795 of file Metadata.h.

References llvm::PointerUnion< PT1, PT2 >::get().

◆ getOrCreateReplaceableUses()

ReplaceableMetadataImpl* llvm::ContextAndReplaceableUses::getOrCreateReplaceableUses ( )
inline

Ensure that this has RAUW support, and then return it.

Definition at line 808 of file Metadata.h.

◆ getReplaceableUses()

ReplaceableMetadataImpl* llvm::ContextAndReplaceableUses::getReplaceableUses ( ) const
inline

Definition at line 801 of file Metadata.h.

References llvm::PointerUnion< PT1, PT2 >::get().

Referenced by llvm::MDNode::dropAllReferences().

◆ hasReplaceableUses()

bool llvm::ContextAndReplaceableUses::hasReplaceableUses ( ) const
inline

Whether this contains RAUW support.

Definition at line 791 of file Metadata.h.

References llvm::PointerUnion< PT1, PT2 >::is().

Referenced by llvm::MDNode::dropAllReferences(), and llvm::MDNode::resolve().

◆ makeReplaceable()

void llvm::ContextAndReplaceableUses::makeReplaceable ( std::unique_ptr< ReplaceableMetadataImpl ReplaceableUses)
inline

Assign RAUW support to this.

Make this replaceable, taking ownership of ReplaceableUses (which must not be null).

Definition at line 819 of file Metadata.h.

References assert().

◆ operator LLVMContext &()

llvm::ContextAndReplaceableUses::operator LLVMContext & ( )
inline

Definition at line 788 of file Metadata.h.

◆ operator=() [1/2]

ContextAndReplaceableUses& llvm::ContextAndReplaceableUses::operator= ( ContextAndReplaceableUses &&  )
delete

◆ operator=() [2/2]

ContextAndReplaceableUses& llvm::ContextAndReplaceableUses::operator= ( const ContextAndReplaceableUses )
delete

◆ takeReplaceableUses()

std::unique_ptr<ReplaceableMetadataImpl> llvm::ContextAndReplaceableUses::takeReplaceableUses ( )
inline

Drop RAUW support.

Cede ownership of RAUW support, returning it.

Definition at line 830 of file Metadata.h.

References assert().

Referenced by llvm::MDNode::dropAllReferences(), and llvm::MDNode::resolve().


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