proxygen
Core-inl.h File Reference
#include <type_traits>
#include <utility>
#include <folly/Portability.h>

Go to the source code of this file.

Classes

class  folly::gen::IsCompatibleSignature< Candidate, Expected >
 
class  folly::gen::IsCompatibleSignature< Candidate, ExpectedReturn(ArgTypes...)>
 
struct  folly::gen::FBounded< Self >
 
class  folly::gen::Operator< Self >
 
class  folly::gen::GenImpl< Value, Self >
 
class  folly::gen::detail::Composed< First, Second >
 
class  folly::gen::detail::Chain< Value, First, Second >
 

Namespaces

 folly
 —— Concurrent Priority Queue Implementation ——
 
 folly::gen
 
 folly::gen::detail
 

Functions

template<class Left , class Right , class Composed = detail::Composed<Left, Right>>
Composed folly::gen::operator| (const Operator< Left > &left, const Operator< Right > &right)
 
template<class Left , class Right , class Composed = detail::Composed<Left, Right>>
Composed folly::gen::operator| (const Operator< Left > &left, Operator< Right > &&right)
 
template<class Left , class Right , class Composed = detail::Composed<Left, Right>>
Composed folly::gen::operator| (Operator< Left > &&left, const Operator< Right > &right)
 
template<class Left , class Right , class Composed = detail::Composed<Left, Right>>
Composed folly::gen::operator| (Operator< Left > &&left, Operator< Right > &&right)
 
template<class LeftValue , class Left , class RightValue , class Right , class Chain = detail::Chain<LeftValue, Left, Right>>
Chain folly::gen::operator+ (const GenImpl< LeftValue, Left > &left, const GenImpl< RightValue, Right > &right)
 
template<class LeftValue , class Left , class RightValue , class Right , class Chain = detail::Chain<LeftValue, Left, Right>>
Chain folly::gen::operator+ (const GenImpl< LeftValue, Left > &left, GenImpl< RightValue, Right > &&right)
 
template<class LeftValue , class Left , class RightValue , class Right , class Chain = detail::Chain<LeftValue, Left, Right>>
Chain folly::gen::operator+ (GenImpl< LeftValue, Left > &&left, const GenImpl< RightValue, Right > &right)
 
template<class LeftValue , class Left , class RightValue , class Right , class Chain = detail::Chain<LeftValue, Left, Right>>
Chain folly::gen::operator+ (GenImpl< LeftValue, Left > &&left, GenImpl< RightValue, Right > &&right)
 
template<class Value , class Gen , class Handler >
std::enable_if< IsCompatibleSignature< Handler, void(Value)>::value >::type folly::gen::operator| (const GenImpl< Value, Gen > &gen, Handler &&handler)
 
template<class Value , class Gen , class Handler >
std::enable_if< IsCompatibleSignature< Handler, bool(Value)>::value, bool >::type folly::gen::operator| (const GenImpl< Value, Gen > &gen, Handler &&handler)
 
template<class Value , class Gen , class Op >
auto folly::gen::operator| (const GenImpl< Value, Gen > &gen, const Operator< Op > &op) -> decltype(op.self().compose(gen.self()))
 
template<class Value , class Gen , class Op >
auto folly::gen::operator| (GenImpl< Value, Gen > &&gen, const Operator< Op > &op) -> decltype(op.self().compose(std::move(gen.self())))