Crow  0.3
A C++ microframework for the web
crow::Router Class Reference

Handles matching requests to existing rules and upgrade requests. More...

#include <routing.h>

Public Member Functions

DynamicRulenew_rule_dynamic (const std::string &rule)
 
template<uint64_t N>
black_magic::arguments< N >::type::template rebind< TaggedRule > & new_rule_tagged (const std::string &rule)
 
CatchallRulecatchall_rule ()
 
void internal_add_rule_object (const std::string &rule, BaseRule *ruleObject, const uint16_t &BP_index, std::vector< Blueprint * > &blueprints)
 
void register_blueprint (Blueprint &blueprint)
 
void get_recursive_child_methods (Blueprint *blueprint, std::vector< HTTPMethod > &methods)
 
void validate_bp (std::vector< Blueprint * > blueprints)
 
void validate ()
 
template<typename Adaptor >
void handle_upgrade (const request &req, response &res, Adaptor &&adaptor)
 
void get_found_bp (std::vector< uint16_t > &bp_i, std::vector< Blueprint * > &blueprints, std::vector< Blueprint * > &found_bps, uint16_t index=0)
 
std::string get_error (unsigned short code, std::tuple< uint16_t, std::vector< uint16_t >, routing_params > &found, const request &req, response &res)
 Is used to handle errors, you insert the error code, found route, request, and response. and it'll either call the appropriate catchall route (considering the blueprint system) and send you a status string (which is mainly used for debug messages), or just set the response code to the proper error code.
 
void handle (const request &req, response &res)
 
void debug_print ()
 
std::vector< Blueprint * > & blueprints ()
 

Detailed Description

Handles matching requests to existing rules and upgrade requests.


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