LLVM 20.0.0git
Classes | Namespaces | Functions
Any.h File Reference

This file provides Any, a non-template class modeled in the spirit of std::any. More...

#include "llvm/ADT/STLForwardCompat.h"
#include "llvm/Support/Compiler.h"
#include <cassert>
#include <memory>
#include <type_traits>

Go to the source code of this file.

Classes

class  llvm::Any
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Functions

template<class T >
T llvm::any_cast (const Any &Value)
 
template<class T >
T llvm::any_cast (Any &Value)
 
template<class T >
T llvm::any_cast (Any &&Value)
 
template<class T >
const Tllvm::any_cast (const Any *Value)
 
template<class T >
Tllvm::any_cast (Any *Value)
 

Detailed Description

This file provides Any, a non-template class modeled in the spirit of std::any.

The idea is to provide a type-safe replacement for C's void*. It can hold a value of any copy-constructible copy-assignable type

Definition in file Any.h.