# Crow: crow::DynamicRule Class Reference

Loading...
Searching...
No Matches
crow::DynamicRule Class Reference

A rule that can change its parameters during runtime. More...

`#include <routing.h>`

Inheritance diagram for crow::DynamicRule:

## Public Member Functions

| DynamicRule (std::string rule)
void | validate () override
void | handle (request &req, response &res, const routing_params &params) override
template<typename Func >
void | operator() (Func f)
template<typename Func , unsigned... Indices>
std::function< void(request &, response &, const routing_params &)> | wrap (Func f, black_magic::seq< Indices... >)
template<typename Func >
void | operator() (std::string name, Func &&f)
Public Member Functions inherited from crow::BaseRule
| BaseRule (std::string rule)
void | set_added ()
bool | is_added ()
std::unique_ptr< BaseRule > | upgrade ()
virtual void | handle_upgrade (const request &, response &res, SocketAdaptor &&)
virtual void | handle_upgrade (const request &, response &res, SSLAdaptor &&)
uint32_t | get_methods ()
template<typename F >
void | foreach_method (F f)
const std::string & | rule ()
Public Member Functions inherited from crow::RuleParameterTraits< DynamicRule >
WebSocketRule< App > & | websocket (App *app)
self_t & | name (std::string name) noexcept
self_t & | methods (HTTPMethod method)
self_t & | methods (HTTPMethod method, MethodArgs... args_method)
self_t & | middlewares ()
| Enable local middleware for this handler.

## Additional Inherited Members

Public Types inherited from crow::RuleParameterTraits< DynamicRule >
using | self_t = DynamicRule
Public Attributes inherited from crow::BaseRule
std::string | custom_templates_base
Protected Attributes inherited from crow::BaseRule
uint32_t | methods_ {1 << static_cast<int>(HTTPMethod::Get)}
std::string | rule_
std::string | name_
bool | added_ {false}
std::unique_ptr< BaseRule > | rule_to_upgrade_
detail::middleware_indices | mw_indices_

## Detailed Description

A rule that can change its parameters during runtime.

## Member Function Documentation

## handle()

void crow::DynamicRule::handle | ( | request & | req,
|  | response & | res,
|  | const routing_params & | params
| ) |  |

inlineoverridevirtual

Implements crow::BaseRule.

## validate()

void crow::DynamicRule::validate | ( |  | ) |

inlineoverridevirtual

Implements crow::BaseRule.

The documentation for this class was generated from the following file:

- include/crow/routing.h