|
cxxmcp 1.1.6
C++ MCP SDK
|
Fluent builder for valid elicitation object schemas. More...
#include <elicitation.hpp>
Public Member Functions | |
| Builder & | title (std::string value) |
| Sets the optional form title. | |
| Builder & | description (std::string value) |
| Sets the optional form description. | |
| Builder & | required_string (std::string name, std::optional< std::string > default_value=std::nullopt, std::optional< std::string > format=std::nullopt) |
| Adds a required string field. | |
| Builder & | optional_string (std::string name, std::optional< std::string > default_value=std::nullopt, std::optional< std::string > format=std::nullopt) |
| Adds an optional string field. | |
| Builder & | required_number (std::string name, std::optional< double > minimum=std::nullopt, std::optional< double > maximum=std::nullopt, std::optional< double > default_value=std::nullopt) |
| Adds a required number field. | |
| Builder & | optional_number (std::string name, std::optional< double > minimum=std::nullopt, std::optional< double > maximum=std::nullopt, std::optional< double > default_value=std::nullopt) |
| Adds an optional number field. | |
| Builder & | required_integer (std::string name, std::optional< std::int64_t > minimum=std::nullopt, std::optional< std::int64_t > maximum=std::nullopt, std::optional< std::int64_t > default_value=std::nullopt) |
| Adds a required integer field. | |
| Builder & | optional_integer (std::string name, std::optional< std::int64_t > minimum=std::nullopt, std::optional< std::int64_t > maximum=std::nullopt, std::optional< std::int64_t > default_value=std::nullopt) |
| Adds an optional integer field. | |
| Builder & | required_bool (std::string name, std::optional< bool > default_value=std::nullopt) |
| Adds a required boolean field. | |
| Builder & | optional_bool (std::string name, std::optional< bool > default_value=std::nullopt) |
| Adds an optional boolean field. | |
| Builder & | required_email (std::string name, std::optional< std::string > default_value=std::nullopt) |
| Adds a required string field with email format. | |
| Builder & | optional_email (std::string name, std::optional< std::string > default_value=std::nullopt) |
| Adds an optional string field with email format. | |
| Builder & | required_enum (std::string name, std::vector< std::string > values, std::optional< std::string > default_value=std::nullopt) |
| Adds a required string enum field. | |
| Builder & | optional_enum (std::string name, std::vector< std::string > values, std::optional< std::string > default_value=std::nullopt) |
| Adds an optional string enum field. | |
| Builder & | required_property (std::string name, PrimitiveSchema schema) |
| Adds a required property with a pre-built primitive schema. | |
| Builder & | optional_property (std::string name, PrimitiveSchema schema) |
| Adds an optional property with a pre-built primitive schema. | |
| core::Result< ElicitationSchema > | build () const |
| Builds the schema after validation. | |
Fluent builder for valid elicitation object schemas.
The builder adds primitive fields and tracks required field names. The final build step rejects empty schemas because form elicitation requires at least one requested property.
|
inline |
Builds the schema after validation.
Builds the final elicitation schema.