drogon
C++14/17-based HTTP application framework
Loading...
Searching...
No Matches
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
 Cdrogon::orm::ArrayParserLow-level array parser
 Cdrogon::AsyncTask
 Cdrogon::AttributesThis class represents the attributes stored in the HTTP request. One can add/get any type of data to/from an Attributes object
 Cdrogon::await_result< T >
 Cdrogon::orm::BaseBuilder< T, SelectAll, Single >
 Cdrogon::internal::BinderArgTypeTraits< T >
 Cdrogon::internal::BinderArgTypeTraits< const T & >
 Cdrogon::internal::BinderArgTypeTraits< const T && >
 Cdrogon::internal::BinderArgTypeTraits< T & >
 Cdrogon::internal::BinderArgTypeTraits< T && >
 Cdrogon::internal::BinderArgTypeTraits< T * >
 Cdrogon::CacheMap< T1, T2 >Cache Map
 Cdrogon::orm::internal::CallbackArgTypeTraits< T >
 Cdrogon::orm::internal::CallbackArgTypeTraits< const T & >
 Cdrogon::orm::internal::CallbackArgTypeTraits< T & >
 Cdrogon::orm::internal::CallbackArgTypeTraits< T && >
 Cdrogon::orm::internal::CallbackArgTypeTraits< T * >
 Cdrogon::CallbackEntryA utility class for CacheMap
 Cdrogon::orm::internal::CallbackHolderBase
 Cdrogon::orm::internal::CallbackHolder< Function >
 Cdrogon::test::internal::ComparsionResult
 Cdrogon::CookieThis class represents a cookie entity
 Cdrogon::orm::CriteriaThis class represents a comparison condition
 Cdrogon::orm::CustomSqlWrapper for custom SQL string
 Cdrogon::orm::DbListenerDatabase asynchronous notification listener abstract class
 Cdrogon::test::internal::Decomposer
 Cdrogon::orm::DefaultValue
 Cdrogon::DrClassMapA map class which can create DrObjects from names
 Cdrogon::DrObjectBaseThe base class for all drogon reflection classes
 Cdrogon::DrObject< HttpOptionsMiddleware >
 Cdrogon::HttpMiddleware< HttpOptionsMiddleware, AutoCreation >
 Cdrogon::HttpOptionsMiddlewareImpl< HttpOptionsMiddleware, false >
 Cdrogon::HttpOptionsMiddleware
 Cdrogon::DrObject< HttpOptionsMiddlewareAuto >
 Cdrogon::HttpMiddleware< HttpOptionsMiddlewareAuto, AutoCreation >
 Cdrogon::HttpOptionsMiddlewareImpl< HttpOptionsMiddlewareAuto, true >
 Cdrogon::HttpOptionsMiddlewareAuto
 Cdrogon::DrObject< Derived >
 Cdrogon::HttpMiddleware< Derived, true >
 Cdrogon::HttpOptionsMiddlewareImpl< Derived, AutoCreation >Simple middleware that tags OPTIONS requests
 Cdrogon::DrObject< IntranetIpFilter >
 Cdrogon::HttpFilter< IntranetIpFilter >
 Cdrogon::IntranetIpFilterA filter that prohibit access from external networks
 Cdrogon::DrObject< LocalHostFilter >
 Cdrogon::HttpFilter< LocalHostFilter >
 Cdrogon::LocalHostFilterA filter that prohibit access from other hosts
 Cdrogon::DrObject< NotFound >
 Cdrogon::DrTemplate< NotFound >
 Cdrogon::NotFoundThis class is used by the drogon to generate the 404 page. Users don't use this class directly
 Cdrogon::DrObject< AccessLogger >
 Cdrogon::Plugin< AccessLogger >
 Cdrogon::plugin::AccessLoggerThis plugin is used to print all requests to the log
 Cdrogon::DrObject< GlobalFilters >
 Cdrogon::Plugin< GlobalFilters >
 Cdrogon::plugin::GlobalFiltersThis plugin is used to add global filters to all HTTP requests. The json configuration is as follows:
 Cdrogon::DrObject< Hodor >
 Cdrogon::Plugin< Hodor >
 Cdrogon::plugin::HodorThe Hodor plugin implements a global rate limiter that limits the number of requests in a particular time unit. The json configuration is as follows:
 Cdrogon::DrObject< PromExporter >
 Cdrogon::Plugin< PromExporter >
 Cdrogon::plugin::PromExporterThe PromExporter plugin implements a prometheus exporter. The json configuration is as follows:
 Cdrogon::DrObject< RealIpResolver >
 Cdrogon::Plugin< RealIpResolver >
 Cdrogon::plugin::RealIpResolverThis plugin is used to resolve client real ip from HTTP request
 Cdrogon::DrObject< Redirector >
 Cdrogon::Plugin< Redirector >
 Cdrogon::plugin::RedirectorThis plugin is used to redirect requests to proper URLs. It is a helper plugin for other plugins, e.g. SlashRemover. Users can register a handler to this plugin to redirect requests. All handlers will be called in the order of registration. The json configuration is as follows:
 Cdrogon::DrObject< SecureSSLRedirector >
 Cdrogon::Plugin< SecureSSLRedirector >
 Cdrogon::plugin::SecureSSLRedirectorThis plugin is used to redirect all non-HTTPS requests to HTTPS (except for those URLs matching a regular expression listed in the 'ssl_redirect_exempt' list)
 Cdrogon::DrObject< SlashRemover >
 Cdrogon::Plugin< SlashRemover >
 Cdrogon::plugin::SlashRemoverThe SlashRemover plugin redirects requests to proper paths if they contain excessive slashes. The json configuration is as follows:
 Cdrogon::DrObject< T >
 Cdrogon::DrTemplate< T >
 Cdrogon::HttpController< T, AutoCreation >The reflection base class template for HTTP controllers
 Cdrogon::HttpFilter< T, AutoCreation >The reflection base class template for filters
 Cdrogon::HttpMiddleware< T, AutoCreation >The reflection base class template for middlewares
 Cdrogon::HttpSimpleController< T, AutoCreation >The reflection base class template for HTTP simple controllers
 Cdrogon::Plugin< T >The reflection base class for plugins
 Cdrogon::WebSocketController< T, AutoCreation >The reflection base class template for WebSocket controllers
 Cdrogon::DrTemplateBaseThe templating engine class
 Cdrogon::DrTemplate< NotFound >
 Cdrogon::DrTemplate< T >
 Cdrogon::HttpFilterBaseThe abstract base class for filters For more details on the class, see the wiki site (the 'Filter' section)
 Cdrogon::HttpFilter< IntranetIpFilter >
 Cdrogon::HttpFilter< LocalHostFilter >
 Cdrogon::HttpFilter< T, AutoCreation >The reflection base class template for filters
 Cdrogon::HttpMiddlewareBaseThe abstract base class for middleware
 Cdrogon::HttpMiddleware< HttpOptionsMiddleware, AutoCreation >
 Cdrogon::HttpMiddleware< HttpOptionsMiddlewareAuto, AutoCreation >
 Cdrogon::HttpMiddleware< Derived, true >
 Cdrogon::HttpFilterBaseThe abstract base class for filters For more details on the class, see the wiki site (the 'Filter' section)
 Cdrogon::HttpMiddleware< T, AutoCreation >The reflection base class template for middlewares
 Cdrogon::HttpSimpleControllerBaseThe abstract base class for HTTP simple controllers
 Cdrogon::HttpSimpleController< T, AutoCreation >The reflection base class template for HTTP simple controllers
 Cdrogon::PluginBaseThe abstract base class for plugins
 Cdrogon::Plugin< AccessLogger >
 Cdrogon::Plugin< GlobalFilters >
 Cdrogon::Plugin< Hodor >
 Cdrogon::Plugin< PromExporter >
 Cdrogon::Plugin< RealIpResolver >
 Cdrogon::Plugin< Redirector >
 Cdrogon::Plugin< SecureSSLRedirector >
 Cdrogon::Plugin< SlashRemover >
 Cdrogon::Plugin< T >The reflection base class for plugins
 Cdrogon::WebSocketControllerBaseThe abstract base class for WebSocket controllers
 Cdrogon::WebSocketController< T, AutoCreation >The reflection base class template for WebSocket controllers
 Cdrogon::orm::DrogonDbExceptionMixin base class to identify drogon-db-specific exception types
 Cdrogon::orm::ArgumentErrorInvalid argument passed to drogon orm lib, similar to std::invalid_argument
 Cdrogon::orm::ConversionErrorValue conversion failed, e.g. when converting "Hello" to int
 Cdrogon::orm::Failure
 Cdrogon::orm::BrokenConnectionException class for lost or failed backend connection
 Cdrogon::orm::TooManyConnections
 Cdrogon::orm::InDoubtError"Help, I don't know whether transaction was committed successfully!"
 Cdrogon::orm::SqlErrorException class for failed queries
 Cdrogon::orm::DataExceptionError in data provided to SQL statement
 Cdrogon::orm::FeatureNotSupportedDatabase feature not supported in current setup
 Cdrogon::orm::InsufficientPrivilege
 Cdrogon::orm::InsufficientResourcesResource shortage on the server
 Cdrogon::orm::DiskFull
 Cdrogon::orm::OutOfMemory
 Cdrogon::orm::IntegrityConstraintViolation
 Cdrogon::orm::CheckViolation
 Cdrogon::orm::ForeignKeyViolation
 Cdrogon::orm::NotNullViolation
 Cdrogon::orm::RestrictViolation
 Cdrogon::orm::UniqueViolation
 Cdrogon::orm::InvalidCursorName
 Cdrogon::orm::InvalidCursorState
 Cdrogon::orm::InvalidSqlStatementName
 Cdrogon::orm::SyntaxError
 Cdrogon::orm::UndefinedColumn
 Cdrogon::orm::UndefinedFunction
 Cdrogon::orm::UndefinedTable
 Cdrogon::orm::TransactionRollbackThe backend saw itself forced to roll back the ongoing transaction
 Cdrogon::orm::DeadlockDetectedThe ongoing transaction has deadlocked. Retrying it may help
 Cdrogon::orm::SerializationFailureTransaction failed to serialize. Please retry it
 Cdrogon::orm::StatementCompletionUnknownWe can't tell whether our last statement succeeded
 Cdrogon::orm::InternalErrorInternal error in internal library
 Cdrogon::orm::RangeErrorSomething is out of range, similar to std::out_of_range
 Cdrogon::orm::UnexpectedRowsQuery returned an unexpected number of rows
 Cdrogon::orm::TimeoutErrorTimeout error in when executing the SQL statement
 Cdrogon::orm::UsageErrorError in usage of drogon orm library, similar to std::logic_error
 Cstd::enable_shared_from_this
 Cdrogon::plugin::GlobalFiltersThis plugin is used to add global filters to all HTTP requests. The json configuration is as follows:
 Cdrogon::plugin::PromExporterThe PromExporter plugin implements a prometheus exporter. The json configuration is as follows:
 Cdrogon::plugin::RedirectorThis plugin is used to redirect requests to proper URLs. It is a helper plugin for other plugins, e.g. SlashRemover. Users can register a handler to this plugin to redirect requests. All handlers will be called in the order of registration. The json configuration is as follows:
 Cdrogon::plugin::SecureSSLRedirectorThis plugin is used to redirect all non-HTTPS requests to HTTPS (except for those URLs matching a regular expression listed in the 'ssl_redirect_exempt' list)
 Cstd::exceptionSTL class
 Cdrogon::StreamError
 Cstd::logic_errorSTL class
 Cdrogon::orm::InternalErrorInternal error in internal library
 Cdrogon::orm::TimeoutErrorTimeout error in when executing the SQL statement
 Cdrogon::orm::UsageErrorError in usage of drogon orm library, similar to std::logic_error
 Cstd::domain_errorSTL class
 Cdrogon::orm::ConversionErrorValue conversion failed, e.g. when converting "Hello" to int
 Cstd::invalid_argumentSTL class
 Cdrogon::orm::ArgumentErrorInvalid argument passed to drogon orm lib, similar to std::invalid_argument
 Cstd::out_of_rangeSTL class
 Cdrogon::orm::RangeErrorSomething is out of range, similar to std::out_of_range
 Cstd::runtime_errorSTL class
 Cdrogon::orm::Failure
 Cstd::false_type
 Cdrogon::internal::CanConvertFromStringStream< T, std::void_t< decltype(std::declval< std::stringstream & >() > > std::declval< T & >())> >
 Cdrogon::internal::CanConvertToString< T, std::void_t< decltype(std::to_string(std::declval< T >()))> >
 Cdrogon::is_awaitable< T, std::void_t< decltype(internal::getAwaiter(std::declval< T >()))> >
 Cdrogon::is_resumable< AsyncTask, std::void_t< AsyncTask > >
 Cdrogon::is_resumable< T, std::void_t< decltype(internal::getAwaiter(std::declval< T >()))> >
 Cdrogon::test::internal::is_printable< _Tp, std::enable_if_t< std::is_same_v< decltype(std::cout<< std::declval< _Tp >()), std::ostream & > > >
 Cdrogon::internal::CanConvertFromStringStream< T, typename >
 Cdrogon::internal::CanConvertToString< T, typename >
 Cdrogon::internal::resumable_type< T >
 Cdrogon::is_awaitable< T, typename >
 Cdrogon::is_resumable< T, typename >
 Cdrogon::test::internal::is_printable< _Tp, dummy >
 Cdrogon::orm::FieldReference to a field in a result set
 Cdrogon::orm::ConstRowIterator
 Cdrogon::orm::ConstReverseRowIterator
 Cdrogon::orm::Filter
 Cdrogon::final_awaiterAn awaiter for Task::promise_type::final_suspend(). Transfer execution back to the coroutine who is co_awaiting this Task
 Cdrogon::internal::FunctionTraits< Function >
 Cdrogon::orm::internal::FunctionTraits< Function >
 Cdrogon::internal::FunctionTraits< ReturnType(*)(Arguments...)>
 Cdrogon::internal::FunctionTraits< ReturnType(*)(HttpRequestPtr &&req, std::function< void(const HttpResponsePtr &)> &&callback, Arguments...)>
 Cdrogon::internal::FunctionTraits< ReturnType(*)(HttpRequestPtr &req, std::function< void(const HttpResponsePtr &)> &&callback, Arguments...)>
 Cdrogon::internal::FunctionTraits< ReturnType(*)(T &&customReq, std::function< void(const HttpResponsePtr &)> &&callback, Arguments...)>
 Cdrogon::internal::FunctionTraits< ReturnType(*)(const HttpRequestPtr &req, RequestStreamPtr &&streamCtx, std::function< void(const HttpResponsePtr &)> &&callback, Arguments...)>
 Cdrogon::internal::FunctionTraits< ReturnType(*)(const HttpRequestPtr &req, std::function< void(const HttpResponsePtr &)> &&callback, Arguments...)>
 Cdrogon::internal::FunctionTraits< ReturnType(ClassType::*)(Arguments...) const >
 Cdrogon::internal::FunctionTraits< ReturnType(ClassType::*)(Arguments...)>
 Cdrogon::orm::internal::FunctionTraits< ReturnType(*)(Arguments...)>
 Cdrogon::orm::internal::FunctionTraits< ReturnType(*)(bool, Arguments...)>
 Cdrogon::orm::internal::FunctionTraits< ReturnType(ClassType::*)(Arguments...) const >
 Cdrogon::orm::internal::FunctionTraits< ReturnType(ClassType::*)(Arguments...)>
 Cdrogon::orm::internal::FunctionTraits< void(*)()>
 Cdrogon::orm::internal::FunctionTraits< void(*)(const DrogonDbException &)>
 Cdrogon::orm::internal::FunctionTraits< void(*)(const Result &)>
 Cdrogon::orm::internal::FunctionTraits< void(*)(const std::exception_ptr &)>
 Cdrogon::orm::internal::has_sqlForDeletingByPrimaryKey< T >
 Cdrogon::orm::internal::has_sqlForFindingByPrimaryKey< T >
 Cdrogon::internal::HttpBinderBase
 Cdrogon::internal::HttpBinder< FUNCTION >
 Cdrogon::internal::HttpConstraint
 Cdrogon::HttpControllerBaseThe base class for HTTP controllers
 Cdrogon::HttpController< T, AutoCreation >The reflection base class template for HTTP controllers
 Cdrogon::HttpFileThis class represents a uploaded file by a HTTP request
 Cdrogon::HttpRequestAbstract class for webapp developer to get or set the Http request;
 Cdrogon::HttpResponse
 Cdrogon::HttpViewDataThis class represents the data set displayed in views
 Cstd::is_assignable
 Cdrogon::internal::CanConvertFromString< T >
 Cstd::is_constructible
 Cdrogon::internal::CanConstructFromString< T >
 Cdrogon::isAutoCreationClass< T >
 Cdrogon::IsPlugin< T >
 Cdrogon::orm::JoinClause
 Cdrogon::test::internal::Lhs< T >
 Cdrogon::orm::Mapper< T >The mapper template
 Cdrogon::CacheMap< T1, T2 >::MapValue
 Cdrogon::MultipartHeader
 Cdrogon::MultiPartParser
 Cdrogon::Mutex
 Cdrogon::orm::MysqlConfig
 Ctrantor::NonCopyable
 Cdrogon::CallbackAwaiter< T >
 Cdrogon::internal::EventLoopAwaiter< T >
 Cdrogon::CallbackAwaiter< std::tuple< internal::void_to_false_t< await_result_t< Tasks > >... > >
 Cdrogon::internal::WhenAllAwaiter< std::vector< Task< T > > >
 Cdrogon::internal::WhenAllAwaiter< std::vector< Task< void > > >
 Cdrogon::internal::WhenAllAwaiter< Tasks >
 Cdrogon::CallbackAwaiter< std::vector< T > >
 Cdrogon::internal::WhenAllAwaiter< std::vector< Task< T > > >
 Cdrogon::CallbackAwaiter< void >
 Cdrogon::internal::EndAwaiter
 Cdrogon::internal::LoopAwaiter
 Cdrogon::internal::SwitchThreadAwaiter
 Cdrogon::internal::TimerAwaiter
 Cdrogon::internal::WhenAllAwaiter< std::vector< Task< void > > >
 Cdrogon::CallbackAwaiter< T >
 Cdrogon::CallbackAwaiter< void >
 Cdrogon::HttpAppFramework
 Cdrogon::HttpClientAsynchronous http client
 Cdrogon::IOThreadStorage< C >Utility class for thread storage handling
 Cdrogon::PluginBaseThe abstract base class for plugins
 Cdrogon::PubSubService< MessageType >This class template implements a publish-subscribe pattern with multiple named topics
 Cdrogon::RestfulControllerThis class is a helper class for the implementation of restful api controllers generated by the drogon_ctl command
 Cdrogon::Topic< MessageType >This class template presents an unnamed topic
 Cdrogon::orm::DbClientDatabase client abstract class
 Cdrogon::orm::Transaction
 Cdrogon::orm::internal::SqlBinder
 Cdrogon::test::CaseBase
 Cdrogon::test::Case
 Cdrogon::test::TestCase
 Cdrogon::OStringStream
 Cdrogon::orm::PostgresConfig
 Cdrogon::AsyncTask::promise_type
 Cdrogon::Task< T >::promise_type
 Cdrogon::Task< void >::promise_type
 Cdrogon::RateLimiterThis class is used to limit the number of requests per second
 Cdrogon::SafeRateLimiter
 Cdrogon::orm::RawParameter
 Cdrogon::monitoring::Registry
 Cdrogon::plugin::PromExporterThe PromExporter plugin implements a prometheus exporter. The json configuration is as follows:
 Cdrogon::RequestStream
 Cdrogon::RequestStreamReader
 Cdrogon::ResponseStream
 Cdrogon::orm::ResultResult set containing data returned by a query or command
 Cdrogon::orm::RowReference to one row in a result
 Cdrogon::orm::ConstResultIterator
 Cdrogon::orm::ConstReverseResultIterator
 Cdrogon::utils::internal::SafeStringHash
 Cdrogon::SessionThis class represents a session stored in the framework. One can get or set any type of data to a session object
 Cdrogon::orm::Sqlite3Config
 Cdrogon::Task< T >
 Cdrogon::Task< void >
 Cdrogon::task_awaiter< Promise >Convert Task to an awaiter when it is co_awaited. Following things will happen:
 Cdrogon::test::ThreadSafeStream
 Cdrogon::orm::internal::Traits< T, hasPrimaryKey >
 Cdrogon::orm::internal::Traits< T, false >
 Cdrogon::orm::TransformBuilder< T, SelectAll, Single >
 Cstd::true_type
 Cdrogon::internal::CanConvertFromStringStream< T, std::void_t< decltype(std::declval< std::stringstream & >() > > std::declval< T & >())> >
 Cdrogon::internal::CanConvertToString< T, std::void_t< decltype(std::to_string(std::declval< T >()))> >
 Cdrogon::is_awaitable< T, std::void_t< decltype(internal::getAwaiter(std::declval< T >()))> >
 Cdrogon::is_resumable< AsyncTask, std::void_t< AsyncTask > >
 Cdrogon::is_resumable< T, std::void_t< decltype(internal::getAwaiter(std::declval< T >()))> >
 Cdrogon::test::internal::is_printable< _Tp, std::enable_if_t< std::is_same_v< decltype(std::cout<< std::declval< _Tp >()), std::ostream & > > >
 Cdrogon::UploadFile
 Cdrogon::orm::internal::VectorTypeTraits< T >
 Cdrogon::orm::internal::VectorTypeTraits< std::string >
 Cdrogon::orm::internal::VectorTypeTraits< std::vector< std::shared_ptr< T > > >
 Cdrogon::WebSocketClientWebSocket client abstract class
 Cdrogon::WebSocketConnectionThe WebSocket connection abstract class