8#ifndef INCLUDED_BALB_CONTROLMANAGER
9#define INCLUDED_BALB_CONTROLMANAGER
136#include <bsl_functional.h>
137#include <bsl_iosfwd.h>
139#include <bsl_optional.h>
140#include <bsl_string.h>
141#include <bsl_vector.h>
163 bsl::istream& stream)>
185 class ControlManager_Entry {
206 ControlManager_Entry(
216 ControlManager_Entry(
const ControlManager_Entry& original,
220 ~ControlManager_Entry();
225 ControlManager_Entry& operator=(
const ControlManager_Entry& rhs);
254 struct CaselessLessThan {
256 typedef void is_transparent;
283 ControlManager(
const ControlManager&);
284 ControlManager& operator=(
const ControlManager&);
396void ControlManager::ControlManager_Entry::setCallback(
399 d_callback = callback;
403bsl::string& ControlManager::ControlManager_Entry::arguments()
409bsl::string& ControlManager::ControlManager_Entry::description()
411 return d_description;
417ControlManager::ControlManager_Entry::callback()
const
423const bsl::string& ControlManager::ControlManager_Entry::arguments()
const
429const bsl::string& ControlManager::ControlManager_Entry::description()
const
431 return d_description;
459 return d_allocator_p;
#define BSLMF_NESTED_TRAIT_DECLARATION(t_TYPE, t_TRAIT)
Definition bslmf_nestedtraitdeclaration.h:231
Definition balb_controlmanager.h:153
BSLMF_NESTED_TRAIT_DECLARATION(ControlManager, bslma::UsesBslmaAllocator)
bslma::Allocator * allocator() const
Definition balb_controlmanager.h:457
int deregisterDefaultHandler()
int deregisterUsageHandler()
Definition balb_controlmanager.h:440
~ControlManager()
Destroy this object.
ControlManager(bslma::Allocator *basicAllocator=0)
bsl::function< void(const bsl::string &prefix, bsl::istream &stream)> ControlHandler
Definition balb_controlmanager.h:164
int deregisterHandler(const bsl::string_view &prefix)
int registerUsageHandler(bsl::ostream &stream)
void printUsageHelper(bsl::ostream *stream, const bsl::string_view &preamble) const
Definition balb_controlmanager.h:448
bool hasDefaultHandler() const
int registerDefaultHandler(const ControlHandler &hander)
int dispatchMessage(const bsl::string_view &message) const
int dispatchMessage(const bsl::string &prefix, bsl::istream &stream) const
void printUsage(bsl::ostream &stream, const bsl::string_view &preamble) const
int registerHandler(const bsl::string_view &prefix, const bsl::string_view &arguments, const bsl::string_view &description, const ControlHandler &handler)
Definition bslstl_stringview.h:471
Definition bslstl_string.h:1252
Forward declaration.
Definition bslstl_function.h:946
Definition bslstl_map.h:653
Definition bslstl_optional.h:2043
Definition bslma_allocator.h:545
Definition bslmt_rwmutex.h:148
Definition balb_controlmanager.h:144
Definition bslma_usesbslmaallocator.h:344