class Registry

Declaration

template <typename T>
class Registry { /* full declaration omitted */ };

Description

A global registry used in conjunction with static constructors to make pluggable components (like targets or garbage collectors) "just work" when linked with an executable.

Declared at: llvm/include/llvm/Support/Registry.h:44

Templates

T

Method Overview

  • public static void add_node(llvm::Registry::node * N)
  • public static llvm::Registry::iterator begin()
  • public static llvm::Registry::iterator end()
  • public static iterator_range<llvm::Registry::iterator> entries()

Methods

static void add_node(llvm::Registry::node* N)

Description

Add a node to the Registry: this is the interface between the plugin and the executable. This function is exported by the executable and called by the plugin to add a node to the executable's registry. Therefore it's not defined here to avoid it being instantiated in the plugin and is instead defined in the executable (see LLVM_INSTANTIATE_REGISTRY below).

Declared at: llvm/include/llvm/Support/Registry.h:79

Parameters

llvm::Registry::node* N

static llvm::Registry::iterator begin()

Declared at: llvm/include/llvm/Support/Registry.h:98

static llvm::Registry::iterator end()

Declared at: llvm/include/llvm/Support/Registry.h:99

static iterator_range<llvm::Registry::iterator>
entries()

Declared at: llvm/include/llvm/Support/Registry.h:101