LLVM 19.0.0git
Classes | Namespaces
type_traits.h File Reference
#include "llvm/Support/Compiler.h"
#include <type_traits>
#include <utility>

Go to the source code of this file.

Classes

class  llvm::is_integral_or_enum< T >
 Metafunction that determines whether the given type is either an integral type or an enumeration type, including enum classes. More...
 
struct  llvm::add_lvalue_reference_if_not_pointer< T, Enable >
 If T is a pointer, just return it. If it is not, return T&. More...
 
struct  llvm::add_lvalue_reference_if_not_pointer< T, std::enable_if_t< std::is_pointer_v< T > > >
 
struct  llvm::add_const_past_pointer< T, Enable >
 If T is a pointer to X, return a pointer to const X. More...
 
struct  llvm::add_const_past_pointer< T, std::enable_if_t< std::is_pointer_v< T > > >
 
struct  llvm::const_pointer_or_const_ref< T, Enable >
 
struct  llvm::const_pointer_or_const_ref< T, std::enable_if_t< std::is_pointer_v< T > > >
 
union  llvm::detail::trivial_helper< T >
 
struct  llvm::is_copy_assignable< T >
 
struct  llvm::is_move_assignable< T >
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
namespace  llvm::detail
 These are wrappers over isa* function that allow them to be used in generic algorithms such as llvm:all_of, llvm::none_of, etc.