LLVM  4.0.0
Namespaces | Classes | Functions
llvm::orc::rpc Namespace Reference

Namespaces

 detail
 

Classes

class  RPCTypeName< remote::DirectBufferWriter >
 
class  SerializationTraits< ChannelT, remote::DirectBufferWriter, remote::DirectBufferWriter, typename std::enable_if< std::is_base_of< RawByteChannel, ChannelT >::value >::type >
 
class  RawByteChannel
 Interface for byte-streams to be used with RPC. More...
 
class  SerializationTraits< ChannelT, T, T, typename std::enable_if< std::is_base_of< RawByteChannel, ChannelT >::value &&(std::is_same< T, uint8_t >::value||std::is_same< T, int8_t >::value||std::is_same< T, uint16_t >::value||std::is_same< T, int16_t >::value||std::is_same< T, uint32_t >::value||std::is_same< T, int32_t >::value||std::is_same< T, uint64_t >::value||std::is_same< T, int64_t >::value||std::is_same< T, char >::value)>::type >
 
class  SerializationTraits< ChannelT, bool, bool, typename std::enable_if< std::is_base_of< RawByteChannel, ChannelT >::value >::type >
 
class  SerializationTraits< ChannelT, std::string, StringRef, typename std::enable_if< std::is_base_of< RawByteChannel, ChannelT >::value >::type >
 
class  SerializationTraits< ChannelT, std::string, const char *, typename std::enable_if< std::is_base_of< RawByteChannel, ChannelT >::value >::type >
 
class  SerializationTraits< ChannelT, std::string, std::string, typename std::enable_if< std::is_base_of< RawByteChannel, ChannelT >::value >::type >
 
class  RPCTypeName
 
class  RPCTypeNameSequence
 TypeNameSequence is a utility for rendering sequences of types to a string by rendering each type, separated by ", ". More...
 
class  RPCTypeName< void >
 
class  RPCTypeName< int8_t >
 
class  RPCTypeName< uint8_t >
 
class  RPCTypeName< int16_t >
 
class  RPCTypeName< uint16_t >
 
class  RPCTypeName< int32_t >
 
class  RPCTypeName< uint32_t >
 
class  RPCTypeName< int64_t >
 
class  RPCTypeName< uint64_t >
 
class  RPCTypeName< bool >
 
class  RPCTypeName< std::string >
 
class  RPCTypeName< std::pair< T1, T2 > >
 
class  RPCTypeName< std::tuple< ArgTs...> >
 
class  RPCTypeName< std::vector< T > >
 
class  SerializationTraits
 The SerializationTraits<ChannelT, T> class describes how to serialize and deserialize an instance of type T to/from an abstract channel of type ChannelT. More...
 
class  SequenceTraits
 
class  SequenceSerialization
 Utility class for serializing sequences of values of varying types. More...
 
class  SequenceSerialization< ChannelT >
 
class  SequenceSerialization< ChannelT, ArgT >
 
class  SequenceSerialization< ChannelT, ArgT, ArgTs...>
 
class  SerializationTraits< ChannelT, std::pair< T1, T2 > >
 SerializationTraits default specialization for std::pair. More...
 
class  SerializationTraits< ChannelT, std::tuple< ArgTs...> >
 SerializationTraits default specialization for std::tuple. More...
 
class  SerializationTraits< ChannelT, std::vector< T > >
 SerializationTraits default specialization for std::vector. More...
 
class  Function
 
class  Function< DerivedFunc, RetT(ArgTs...)>
 
class  FunctionArgsTuple
 Provides a typedef for a tuple containing the decayed argument types. More...
 
class  FunctionArgsTuple< RetT(ArgTs...)>
 
class  RPCFunctionIdAllocator
 Allocates RPC function ids during autonegotiation. More...
 
class  RPCFunctionIdAllocator< T, typename std::enable_if< std::is_integral< T >::value >::type >
 This specialization of RPCFunctionIdAllocator provides a default implementation for integral types. More...
 
class  MultiThreadedRPCEndpoint
 
class  SingleThreadedRPCEndpoint
 
class  ParallelCallGroup
 Allows a set of asynchrounous calls to be dispatched, and then waited on as a group. More...
 
class  APICalls
 Convenience class for grouping RPC Functions into APIs that can be negotiated as a block. More...
 
class  APICalls< Func, Funcs...>
 
class  APICalls< APICalls< InnerFuncs...>, Funcs...>
 

Functions

template<typename OStream >
OStream & operator<< (OStream &OS, const RPCTypeNameSequence<> &V)
 Render an empty TypeNameSequence to an ostream. More...
 
template<typename OStream , typename ArgT >
OStream & operator<< (OStream &OS, const RPCTypeNameSequence< ArgT > &V)
 Render a TypeNameSequence of a single type to an ostream. More...
 
template<typename OStream , typename ArgT1 , typename ArgT2 , typename... ArgTs>
OStream & operator<< (OStream &OS, const RPCTypeNameSequence< ArgT1, ArgT2, ArgTs...> &V)
 Render a TypeNameSequence of more than one type to an ostream. More...
 
template<typename ChannelT , typename... ArgTs>
Error serializeSeq (ChannelT &C, const ArgTs &...Args)
 
template<typename ChannelT , typename... ArgTs>
Error deserializeSeq (ChannelT &C, ArgTs &...Args)
 

Function Documentation

template<typename ChannelT , typename... ArgTs>
Error llvm::orc::rpc::deserializeSeq ( ChannelT &  C,
ArgTs &...  Args 
)
template<typename OStream >
OStream& llvm::orc::rpc::operator<< ( OStream &  OS,
const RPCTypeNameSequence<> &  V 
)

Render an empty TypeNameSequence to an ostream.

Definition at line 31 of file RPCSerialization.h.

template<typename OStream , typename ArgT >
OStream& llvm::orc::rpc::operator<< ( OStream &  OS,
const RPCTypeNameSequence< ArgT > &  V 
)

Render a TypeNameSequence of a single type to an ostream.

Definition at line 37 of file RPCSerialization.h.

References getName().

template<typename OStream , typename ArgT1 , typename ArgT2 , typename... ArgTs>
OStream& llvm::orc::rpc::operator<< ( OStream &  OS,
const RPCTypeNameSequence< ArgT1, ArgT2, ArgTs...> &  V 
)

Render a TypeNameSequence of more than one type to an ostream.

Definition at line 45 of file RPCSerialization.h.

References getName().

template<typename ChannelT , typename... ArgTs>
Error llvm::orc::rpc::serializeSeq ( ChannelT &  C,
const ArgTs &...  Args 
)