LLVM API Documentation

Classes | Public Types | Public Member Functions | Friends
llvm::NamedMDNode Class Reference

A tuple of MDNodes. More...

#include <Metadata.h>

Inheritance diagram for llvm::NamedMDNode:
Inheritance graph
[legend]
Collaboration diagram for llvm::NamedMDNode:
Collaboration graph
[legend]

List of all members.

Classes

class  op_iterator_impl

Public Types

typedef op_iterator_impl
< MDNode *, MDNode
op_iterator
typedef op_iterator_impl
< const MDNode *, MDNode
const_op_iterator

Public Member Functions

void eraseFromParent ()
 Drop all references and remove the node from parent module.
void dropAllReferences ()
 Remove all uses and clear node vector.
 ~NamedMDNode ()
ModulegetParent ()
 Get the module that holds this named metadata collection.
const ModulegetParent () const
MDNodegetOperand (unsigned i) const
unsigned getNumOperands () const
void addOperand (MDNode *M)
StringRef getName () const
void print (raw_ostream &ROS) const
void dump () const
op_iterator op_begin ()
op_iterator op_end ()
const_op_iterator op_begin () const
const_op_iterator op_end () const
iterator_range< op_iteratoroperands ()
iterator_range< const_op_iteratoroperands () const

Friends

class SymbolTableListTraits< NamedMDNode, Module >
struct ilist_traits< NamedMDNode >
class LLVMContextImpl
class Module

Detailed Description

A tuple of MDNodes.

Despite its name, a NamedMDNode isn't itself an MDNode. NamedMDNodes belong to modules, have names, and contain lists of MDNodes.

TODO: Inherit from Metadata.

Definition at line 326 of file Metadata.h.


Member Typedef Documentation

Definition at line 404 of file Metadata.h.

typedef op_iterator_impl<MDNode *, MDNode> llvm::NamedMDNode::op_iterator

Definition at line 400 of file Metadata.h.


Constructor & Destructor Documentation

Definition at line 556 of file Metadata.cpp.

References dropAllReferences(), and getNMDOps().


Member Function Documentation

Remove all uses and clear node vector.

Definition at line 580 of file Metadata.cpp.

References llvm::SmallVectorImpl< T >::clear(), and getNMDOps().

Referenced by ~NamedMDNode().

void NamedMDNode::dump ( ) const

Definition at line 2569 of file AsmWriter.cpp.

References llvm::dbgs(), and print().

Drop all references and remove the node from parent module.

Definition at line 576 of file Metadata.cpp.

References llvm::Module::eraseNamedMetadata(), and getParent().

Referenced by llvm::StripDebugInfo().

Get the module that holds this named metadata collection.

Definition at line 387 of file Metadata.h.

Referenced by eraseFromParent(), and print().

Definition at line 388 of file Metadata.h.

Definition at line 401 of file Metadata.h.

Referenced by operands().

Definition at line 405 of file Metadata.h.

Definition at line 402 of file Metadata.h.

References getNumOperands().

Referenced by operands().

Definition at line 406 of file Metadata.h.

References getNumOperands().

Definition at line 411 of file Metadata.h.

References op_begin(), and op_end().

void NamedMDNode::print ( raw_ostream ROS) const

Definition at line 2450 of file AsmWriter.cpp.

References getParent(), and llvm::AssemblyWriter::printNamedMDNode().

Referenced by dump().


Friends And Related Function Documentation

friend struct ilist_traits< NamedMDNode > [friend]

Definition at line 328 of file Metadata.h.

friend class LLVMContextImpl [friend]

Definition at line 329 of file Metadata.h.

friend class Module [friend]

Definition at line 330 of file Metadata.h.

friend class SymbolTableListTraits< NamedMDNode, Module > [friend]

Definition at line 327 of file Metadata.h.


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