LLVM  4.0.0
Classes | Namespaces | Functions
Optional.h File Reference
#include "llvm/ADT/None.h"
#include "llvm/Support/AlignOf.h"
#include "llvm/Support/Compiler.h"
#include <cassert>
#include <new>
#include <utility>
Include dependency graph for Optional.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::Optional< T >
 
struct  llvm::isPodLike< T >
 isPodLike - This is a type trait that is used to determine whether a given type can be copied around with memcpy instead of running ctors etc. More...
 
struct  llvm::isPodLike< Optional< T > >
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Functions

template<typename T , typename U >
bool llvm::operator== (const Optional< T > &X, const Optional< U > &Y)
 
template<typename T , typename U >
bool llvm::operator!= (const Optional< T > &X, const Optional< U > &Y)
 
template<typename T , typename U >
bool llvm::operator< (const Optional< T > &X, const Optional< U > &Y)
 
template<typename T , typename U >
bool llvm::operator<= (const Optional< T > &X, const Optional< U > &Y)
 
template<typename T , typename U >
bool llvm::operator> (const Optional< T > &X, const Optional< U > &Y)
 
template<typename T , typename U >
bool llvm::operator>= (const Optional< T > &X, const Optional< U > &Y)
 
template<typename T >
bool llvm::operator== (const Optional< T > &X, NoneType)
 
template<typename T >
bool llvm::operator== (NoneType, const Optional< T > &X)
 
template<typename T >
bool llvm::operator!= (const Optional< T > &X, NoneType)
 
template<typename T >
bool llvm::operator!= (NoneType, const Optional< T > &X)
 
template<typename T >
bool llvm::operator< (const Optional< T > &X, NoneType)
 
template<typename T >
bool llvm::operator< (NoneType, const Optional< T > &X)
 
template<typename T >
bool llvm::operator<= (const Optional< T > &X, NoneType)
 
template<typename T >
bool llvm::operator<= (NoneType, const Optional< T > &X)
 
template<typename T >
bool llvm::operator> (const Optional< T > &X, NoneType)
 
template<typename T >
bool llvm::operator> (NoneType, const Optional< T > &X)
 
template<typename T >
bool llvm::operator>= (const Optional< T > &X, NoneType)
 
template<typename T >
bool llvm::operator>= (NoneType, const Optional< T > &X)
 
template<typename T >
bool llvm::operator== (const Optional< T > &X, const T &Y)
 
template<typename T >
bool llvm::operator== (const T &X, const Optional< T > &Y)
 
template<typename T >
bool llvm::operator!= (const Optional< T > &X, const T &Y)
 
template<typename T >
bool llvm::operator!= (const T &X, const Optional< T > &Y)
 
template<typename T >
bool llvm::operator< (const Optional< T > &X, const T &Y)
 
template<typename T >
bool llvm::operator< (const T &X, const Optional< T > &Y)
 
template<typename T >
bool llvm::operator<= (const Optional< T > &X, const T &Y)
 
template<typename T >
bool llvm::operator<= (const T &X, const Optional< T > &Y)
 
template<typename T >
bool llvm::operator> (const Optional< T > &X, const T &Y)
 
template<typename T >
bool llvm::operator> (const T &X, const Optional< T > &Y)
 
template<typename T >
bool llvm::operator>= (const Optional< T > &X, const T &Y)
 
template<typename T >
bool llvm::operator>= (const T &X, const Optional< T > &Y)