LLVM 19.0.0git
Public Types | Static Public Member Functions | List of all members
llvm::DomTreeNodeTraits< NodeT > Struct Template Reference

Default DomTreeNode traits for NodeT. More...

#include "llvm/Support/GenericDomTree.h"

Public Types

using NodeType = NodeT
 
using NodePtr = NodeT *
 
using ParentPtr = decltype(std::declval< NodePtr >() ->getParent())
 
using ParentType = std::remove_pointer_t< ParentPtr >
 

Static Public Member Functions

static NodeT * getEntryNode (ParentPtr Parent)
 
static ParentPtr getParent (NodePtr BB)
 

Detailed Description

template<typename NodeT>
struct llvm::DomTreeNodeTraits< NodeT >

Default DomTreeNode traits for NodeT.

The default implementation assume a Function-like NodeT. Can be specialized to support different node types.

Definition at line 226 of file GenericDomTree.h.

Member Typedef Documentation

◆ NodePtr

template<typename NodeT >
using llvm::DomTreeNodeTraits< NodeT >::NodePtr = NodeT *

Definition at line 228 of file GenericDomTree.h.

◆ NodeType

template<typename NodeT >
using llvm::DomTreeNodeTraits< NodeT >::NodeType = NodeT

Definition at line 227 of file GenericDomTree.h.

◆ ParentPtr

template<typename NodeT >
using llvm::DomTreeNodeTraits< NodeT >::ParentPtr = decltype(std::declval<NodePtr>()->getParent())

Definition at line 229 of file GenericDomTree.h.

◆ ParentType

template<typename NodeT >
using llvm::DomTreeNodeTraits< NodeT >::ParentType = std::remove_pointer_t<ParentPtr>

Definition at line 232 of file GenericDomTree.h.

Member Function Documentation

◆ getEntryNode()

template<typename NodeT >
static NodeT * llvm::DomTreeNodeTraits< NodeT >::getEntryNode ( ParentPtr  Parent)
inlinestatic

◆ getParent()

template<typename NodeT >
static ParentPtr llvm::DomTreeNodeTraits< NodeT >::getParent ( NodePtr  BB)
inlinestatic

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