Anklang C++ API 0.0.0
Loading...
Searching...
No Matches
Jsonipc Namespace Reference

Classes

struct bad_invocation
class BindingPrinter
struct CallbackInfo
struct CallTraits
struct Class
struct Convert
struct Convert< Ase::JsTrigger >
struct Convert< Ase::Value >
struct Convert< Ase::ValueP >
struct Convert< Ase::ValueR >
struct Convert< bool >
struct Convert< const char * >
struct Convert< std::shared_ptr< Ase::ValueR > >
struct Convert< std::shared_ptr< T >, REQUIRESv< IsWrappableClass< T >::value > >
struct Convert< std::string >
struct Convert< T & >
struct Convert< T *, REQUIRESv< IsWrappableClass< T >::value > >
struct Convert< T const & >
struct Convert< T, REQUIRESv< DerivesPair< T >::value > >
struct Convert< T, REQUIRESv< DerivesVector< T >::value > >
struct Convert< T, REQUIRESv< IsWrappableClass< T >::value > >
struct Convert< T, REQUIRESv< std::is_enum< T >::value > >
struct Convert< T, REQUIRESv< std::is_floating_point< T >::value > >
struct Convert< T, REQUIRESv< std::is_integral< T >::value > >
struct DefaultConstant
struct DerivesPair
struct DerivesPair< T, std::void_t< typename T::first_type, typename T::second_type > >
struct DerivesSharedPtr
struct DerivesSharedPtr< T, std::void_t< typename T::element_type > >
struct DerivesVector
struct DerivesVector< T, std::void_t< typename T::value_type, typename T::allocator_type > >
struct Enum
struct FunctionTraits
struct FunctionTraits< const F >
struct FunctionTraits< F & >
struct FunctionTraits< R(Args...)>
struct FunctionTraits< R(C::*)(Args...) const >
struct FunctionTraits< R(C::*)(Args...)>
struct FunctionTraits< R(C::*)>
struct Has___typename__
struct Has___typename__< T, std::void_t< decltype(std::declval< const T & >().__typename__()) > >
struct Has_setget
struct Has_setget< T, std::void_t< decltype(std::declval< T & >().set(std::declval< T & >().get())) > >
struct Has_shared_from_this
struct Has_shared_from_this< T, std::void_t< decltype(std::declval< T & >().shared_from_this()) > >
class InstanceMap
struct IpcDispatcher
struct IsSharedPtr
struct IsSharedPtr< std::shared_ptr< T > >
struct IsWrappableClass
struct IsWrappableClass< std::string >
struct IsWrappableClass< T, REQUIRESv< DerivesPair< T >::value > >
struct IsWrappableClass< T, REQUIRESv< DerivesVector< T >::value > >
struct IsWrappableClass< T, REQUIRESv< std::is_class< T >::value &&!IsSharedPtr< T >::value &&!DerivesPair< T >::value &&!DerivesVector< T >::value > >
struct JsonipcSharedBase
class Scope
struct Serializable
class TypeInfo
struct typescript_name
struct typescript_name< const T & >
struct typescript_name< std::map< std::string, T > >
struct typescript_name< std::pair< T1, T2 > >
struct typescript_name< std::shared_ptr< T > >
struct typescript_name< std::unordered_map< std::string, T > >
struct typescript_name< std::vector< T > >
struct typescript_name< T & >
struct typescript_name< T * >

Typedefs

usingClosure = std::function< void(CallbackInfo &)>
usingDefaultConstantVariant = std::variant< std::monostate, std::nullptr_t, uint64_t, int64_t, double, std::string >
usingDefaultsList = std::initializer_list< DefaultConstant >
usingJsonAllocator = rapidjson::MemoryPoolAllocator< rapidjson::CrtAllocator >
usingJsonValue = rapidjson::GenericValue< rapidjson::UTF8< char >, rapidjson::MemoryPoolAllocator< rapidjson::CrtAllocator > >
template<bool value>
usingREQUIRES = typename ::std::enable_if< value, bool >::type
template<bool value>
usingREQUIRESv = typename ::std::enable_if< value, void >::type
usingScopeLocals = std::vector< std::shared_ptr< void > >
usingScopeLocalsP = std::shared_ptr< ScopeLocals >
usingSharedBase = JsonipcSharedBase
usingStringBufferWriter = rapidjson::Writer< rapidjson::StringBuffer, rapidjson::UTF8<>, rapidjson::UTF8<>, rapidjson::CrtAllocator, rapidjson::kWriteNanAndInfNullFlag >

Functions

std::stringnormalize_typename (const std::string &string)
std::stringshort_name (const std::string &full_name)
template<>
JsonValueto_json< const char * > (const char *const &value, JsonAllocator &allocator)
template<typename... Args>
std::stringtypescript_arg_list ()
template<typename... Args>
std::stringtypescript_arg_names_list ()
template<typename T , typename Ret , typename... Args>
std::stringtypescript_call (const std::string &method_name, Ret(T::*func)(Args...))
template<typename C , typename R , typename... Args>
std::stringtypescript_call_impl (const std::string &method_name)

Variables

BindingPrinter *g_binding_printer

Typedef Documentation

SharedBase

JsonValue

using JsonValue = rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> >

JsonAllocator

using JsonAllocator = rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator>

StringBufferWriter

using StringBufferWriter = rapidjson::Writer<rapidjson::StringBuffer, rapidjson::UTF8<>, rapidjson::UTF8<>, rapidjson::CrtAllocator, rapidjson::kWriteNanAndInfNullFlag>

REQUIRES

template<bool value>
using REQUIRES = typename ::std::enable_if<value, bool>::type

REQUIRES<value> - Simplified version of std::enable_if<cond,bool>::type to use SFINAE in function templates.

REQUIRESv

template<bool value>
using REQUIRESv = typename ::std::enable_if<value, void>::type

REQUIRESv<value> - Simplified version of std::enable_if<cond,void>::type to use SFINAE in struct templates.

ScopeLocals

using ScopeLocals = std::vector<std::shared_ptr<void> >

ScopeLocalsP

using ScopeLocalsP = std::shared_ptr<ScopeLocals>

Closure

using Closure = std::function<void (CallbackInfo&)>

DefaultConstantVariant

using DefaultConstantVariant = std::variant<std::monostate, std::nullptr_t, uint64_t, int64_t, double, std::string>

DefaultsList

using DefaultsList = std::initializer_list<DefaultConstant>

Function Documentation

to_json< const char * >()

template<>
JsonValue to_json< const char * > ( const char *const & value,
JsonAllocator & allocator
)

Convert C++ value to JsonValue.

normalize_typename()

std::string normalize_typename ( const std::string & string)

Yield the Javascript identifier name by substituting ':+' with '.'.

short_name()

std::string short_name ( const std::string & full_name)

typescript_arg_list()

template<typename... Args>
std::string typescript_arg_list ( )

typescript_arg_names_list()

template<typename... Args>
std::string typescript_arg_names_list ( )

typescript_call_impl()

template<typename C , typename R , typename... Args>
std::string typescript_call_impl ( const std::string & method_name)

typescript_call()

template<typename T , typename Ret , typename... Args>
std::string typescript_call ( const std::string & method_name,
Ret(T::*)(Args...) func
)

Variable Documentation

g_binding_printer

BindingPrinter* g_binding_printer