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

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

#include <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
< ReplaceableMetadataImpl
takeReplaceableUses ()
 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 736 of file Metadata.h.

Constructor & Destructor Documentation

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

Definition at line 740 of file Metadata.h.

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

Definition at line 741 of file Metadata.h.

References assert(), and getReplaceableUses().

llvm::ContextAndReplaceableUses::ContextAndReplaceableUses ( )
delete
llvm::ContextAndReplaceableUses::ContextAndReplaceableUses ( ContextAndReplaceableUses &&  )
delete
llvm::ContextAndReplaceableUses::ContextAndReplaceableUses ( const ContextAndReplaceableUses )
delete
llvm::ContextAndReplaceableUses::~ContextAndReplaceableUses ( )
inline

Definition at line 752 of file Metadata.h.

References getReplaceableUses().

Member Function Documentation

LLVMContext& llvm::ContextAndReplaceableUses::getContext ( ) const
inline
ReplaceableMetadataImpl* llvm::ContextAndReplaceableUses::getOrCreateReplaceableUses ( )
inline

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

Definition at line 774 of file Metadata.h.

References getContext(), getReplaceableUses(), hasReplaceableUses(), and makeReplaceable().

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

Whether this contains RAUW support.

Definition at line 757 of file Metadata.h.

Referenced by getContext(), getOrCreateReplaceableUses(), getReplaceableUses(), and takeReplaceableUses().

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 785 of file Metadata.h.

References assert(), getContext(), and getReplaceableUses().

Referenced by getOrCreateReplaceableUses().

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

Definition at line 754 of file Metadata.h.

References getContext().

ContextAndReplaceableUses& llvm::ContextAndReplaceableUses::operator= ( ContextAndReplaceableUses &&  )
delete
ContextAndReplaceableUses& llvm::ContextAndReplaceableUses::operator= ( const ContextAndReplaceableUses )
delete
std::unique_ptr<ReplaceableMetadataImpl> llvm::ContextAndReplaceableUses::takeReplaceableUses ( )
inline

Drop RAUW support.

Cede ownership of RAUW support, returning it.

Definition at line 796 of file Metadata.h.

References assert(), getReplaceableUses(), and hasReplaceableUses().


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