cxxmcp 1.1.6
C++ MCP SDK
Loading...
Searching...
No Matches
mcp::protocol::detail Namespace Reference

Auto-generates JSON Schema from a Reflect<T> specialization. More...

Classes

struct  has_known_keys
 
struct  has_known_keys< T, std::void_t< decltype(T::known_keys())> >
 

Functions

template<typename S , typename F >
void push_wire_name (std::vector< std::string > &keys, const FieldDescriptor< S, F > &fd)
 Overloads that extract wire_name from field descriptors.
 
template<typename S , typename F >
void push_wire_name (std::vector< std::string > &keys, const DeserializeOnlyField< S, F > &fd)
 
template<typename S >
void push_wire_name (std::vector< std::string > &, const ExtensionsField< S > &)
 
template<typename Struct , typename Field >
void add_reflected_field_schema (Json &properties, Json &required, const FieldDescriptor< Struct, Field > &fd)
 
template<typename Struct >
void add_reflected_field_schema (Json &, Json &, const ExtensionsField< Struct > &)
 
template<typename Struct , typename Field >
void add_reflected_field_schema (Json &, Json &, const DeserializeOnlyField< Struct, Field > &)
 
template<class T >
Json reflect_schema ()
 

Detailed Description

Auto-generates JSON Schema from a Reflect<T> specialization.

Function Documentation

◆ push_wire_name()

template<typename S , typename F >
void mcp::protocol::detail::push_wire_name ( std::vector< std::string > &  keys,
const FieldDescriptor< S, F > &  fd 
)

Overloads that extract wire_name from field descriptors.

ExtensionsField has no wire_name; the others do.