LLVM: llvm::ManagedStatic< C, Creator, Deleter (original) (raw)
ManagedStatic - This transparently changes the behavior of global statics to be lazily constructed on demand (good for reducing startup times of dynamic libraries that link in LLVM components) and for making destruction be explicit through the llvm_shutdown() function call. More...
#include "[llvm/Support/ManagedStatic.h](ManagedStatic%5F8h%5Fsource.html)"
| Public Member Functions | |
|---|---|
| C & | operator* () |
| C * | operator-> () |
| const C & | operator* () const |
| const C * | operator-> () const |
| C * | claim () |
| Public Member Functions inherited from llvm::ManagedStaticBase | |
| constexpr | ManagedStaticBase ()=default |
| bool | isConstructed () const |
| isConstructed - Return true if this object has not been created yet. | |
| LLVM_ABI void | destroy () const |
| Additional Inherited Members | |
|---|---|
| Protected Member Functions inherited from llvm::ManagedStaticBase | |
| LLVM_ABI void | RegisterManagedStatic (void *(*creator)(), void(*deleter)(void *)) const |
| Protected Attributes inherited from llvm::ManagedStaticBase | |
| std::atomic< void * > | Ptr {} |
| void(* | DeleterFn )(void *) = nullptr |
| const ManagedStaticBase * | Next = nullptr |
template<class C, class Creator = object_creator, class Deleter = object_deleter>
class llvm::ManagedStatic< C, Creator, Deleter >
ManagedStatic - This transparently changes the behavior of global statics to be lazily constructed on demand (good for reducing startup times of dynamic libraries that link in LLVM components) and for making destruction be explicit through the llvm_shutdown() function call.
Definition at line 85 of file ManagedStatic.h.
◆ claim()
template<class C, class Creator = object_creator, class Deleter = object_deleter>
◆ operator*() [1/2]
template<class C, class Creator = object_creator, class Deleter = object_deleter>
◆ operator*() [2/2]
template<class C, class Creator = object_creator, class Deleter = object_deleter>
◆ operator->() [1/2]
template<class C, class Creator = object_creator, class Deleter = object_deleter>
◆ operator->() [2/2]
template<class C, class Creator = object_creator, class Deleter = object_deleter>
The documentation for this class was generated from the following file:
- include/llvm/Support/ManagedStatic.h