proxygen
dynamic-inl.h File Reference
#include <functional>
#include <folly/CPortability.h>
#include <folly/Conv.h>
#include <folly/Format.h>
#include <folly/Likely.h>
#include <folly/detail/Iterators.h>
#include <folly/lang/Exception.h>

Go to the source code of this file.

Classes

struct  folly::detail::DynamicHasher
 
struct  folly::detail::DynamicKeyEqual
 
struct  std::hash<::folly::dynamic >
 
struct  folly::TypeError
 
struct  folly::detail::Destroy
 
struct  folly::dynamic::ObjectImpl
 
struct  folly::dynamic::ObjectMaker
 
struct  folly::dynamic::item_iterator
 
struct  folly::dynamic::value_iterator
 
struct  folly::dynamic::const_item_iterator
 
struct  folly::dynamic::const_key_iterator
 
struct  folly::dynamic::const_value_iterator
 
struct  folly::dynamic::NumericTypeHelper< T, typename std::enable_if< std::is_integral< T >::value >::type >
 
struct  folly::dynamic::NumericTypeHelper< bool >
 
struct  folly::dynamic::NumericTypeHelper< float >
 
struct  folly::dynamic::NumericTypeHelper< double >
 
struct  folly::dynamic::IterableProxy< It >
 
struct  folly::dynamic::CompareOp< T >
 
struct  folly::dynamic::CompareOp< dynamic::ObjectImpl >
 
struct  folly::dynamic::CompareOp< std::nullptr_t >
 
struct  folly::dynamic::TypeInfo< std::nullptr_t >
 
struct  folly::dynamic::TypeInfo< bool >
 
struct  folly::dynamic::TypeInfo< std::string >
 
struct  folly::dynamic::TypeInfo< dynamic::Array >
 
struct  folly::dynamic::TypeInfo< double >
 
struct  folly::dynamic::TypeInfo< int64_t >
 
struct  folly::dynamic::TypeInfo< dynamic::ObjectImpl >
 
struct  folly::dynamic::GetAddrImpl< T >
 
struct  folly::dynamic::GetAddrImpl< std::nullptr_t >
 
struct  folly::dynamic::GetAddrImpl< dynamic::Array >
 
struct  folly::dynamic::GetAddrImpl< bool >
 
struct  folly::dynamic::GetAddrImpl< int64_t >
 
struct  folly::dynamic::GetAddrImpl< double >
 
struct  folly::dynamic::GetAddrImpl< std::string >
 
struct  folly::dynamic::GetAddrImpl< dynamic::ObjectImpl >
 
struct  folly::dynamic::PrintImpl< T >
 
struct  folly::dynamic::PrintImpl< std::nullptr_t >
 
struct  folly::dynamic::PrintImpl< dynamic::ObjectImpl >
 
struct  folly::dynamic::PrintImpl< dynamic::Array >
 
class  folly::FormatValue< dynamic >
 
class  folly::FormatValue< detail::DefaultValueWrapper< dynamic, V > >
 

Namespaces

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

Macros

#define FB_DYNAMIC_APPLY(type, apply)
 
#define FB_DYNAMIC_INTEGER_OP(op)
 
#define FOLLY_DYNAMIC_DEC_TYPEINFO(T, str, val)
 
#define FB_X(T)   PrintImpl<T>::print(*this, out, *getAddress<T>())
 

Functions

template<template< class > class Op>
dynamic folly::detail::numericOp (dynamic const &a, dynamic const &b)
 
std::ostream & folly::operator<< (std::ostream &out, dynamic const &d)
 

Macro Definition Documentation

#define FB_DYNAMIC_APPLY (   type,
  apply 
)
Value:
do { \
switch ((type)) { \
case NULLT: \
apply(std::nullptr_t); \
break; \
case ARRAY: \
apply(Array); \
break; \
case BOOL: \
apply(bool); \
break; \
case DOUBLE: \
apply(double); \
break; \
case INT64: \
break; \
case OBJECT: \
apply(ObjectImpl); \
break; \
case STRING: \
break; \
CHECK(0); \
abort(); \
} \
} while (0)
PskType type
#define STRING
const char * string
Definition: Conv.cpp:212
default
Definition: upload.py:394
decltype(auto) constexpr apply(F &&func, Tuple &&tuple)
Definition: ApplyTuple.h:87

Definition at line 97 of file dynamic-inl.h.

Referenced by folly::dynamic::print().

#define FB_DYNAMIC_INTEGER_OP (   op)
Value:
inline dynamic& dynamic::operator op(dynamic const& o) { \
if (!isInt() || !o.isInt()) { \
throw_exception<TypeError>("int64", type(), o.type()); \
} \
*getAddress<int64_t>() op o.asInt(); \
return *this; \
}
PskType type
if(FOLLY_USE_SYMBOLIZER) add_library(folly_exception_tracer_base ExceptionTracer.cpp StackTrace.cpp) apply_folly_compile_options_to_target(folly_exception_tracer_base) target_link_libraries(folly_exception_tracer_base PUBLIC folly) add_library(folly_exception_tracer ExceptionStackTraceLib.cpp ExceptionTracerLib.cpp) apply_folly_compile_options_to_target(folly_exception_tracer) target_link_libraries(folly_exception_tracer PUBLIC folly_exception_tracer_base) add_library(folly_exception_counter ExceptionCounterLib.cpp) apply_folly_compile_options_to_target(folly_exception_counter) target_link_libraries(folly_exception_counter PUBLIC folly_exception_tracer) install(FILES ExceptionAbi.h ExceptionCounterLib.h ExceptionTracer.h ExceptionTracerLib.h StackTrace.h DESTINATION $
Definition: CMakeLists.txt:1

Definition at line 624 of file dynamic-inl.h.

#define FB_X (   T)    PrintImpl<T>::print(*this, out, *getAddress<T>())

Referenced by folly::dynamic::print().

#define FOLLY_DYNAMIC_DEC_TYPEINFO (   T,
  str,
  val 
)
Value:
template <> \
struct dynamic::TypeInfo<T> { \
static constexpr const char* name = str; \
static constexpr dynamic::Type type = val; \
}; \
PskType type
double val
Definition: String.cpp:273
const char * name
Definition: http_parser.c:437

Definition at line 990 of file dynamic-inl.h.