std::string_view 的使用
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
#include <string_view>
|
||||
|
||||
|
||||
|
||||
@@ -23,12 +24,12 @@
|
||||
// 集中 管理日志
|
||||
using namespace Psc;
|
||||
extern BaseLogger* server_logger;
|
||||
std::string to_file_name(std::string str);
|
||||
std::string to_file_name(std::string_view str);
|
||||
std::string inet_address_to_string(const trantor::InetAddress &addr);
|
||||
|
||||
using Serial_Number_Type = unsigned int;
|
||||
struct Debug_Logger_Info_Manager {
|
||||
void push_info(const std::string& content);
|
||||
void push_info(std::string_view content);
|
||||
std::string get_info(Serial_Number_Type serial_number);
|
||||
Serial_Number_Type get_cur_serial_number();
|
||||
struct Info {
|
||||
@@ -74,7 +75,7 @@ public:
|
||||
std::string fall = "fall_";
|
||||
using Handler = std::function<void(const drogon::HttpRequestPtr&, const drogon::HttpResponsePtr&)>;
|
||||
using CoroHandler = std::function<drogon::Task<>(const drogon::HttpRequestPtr&, const drogon::HttpResponsePtr&)>;
|
||||
bool listen(const std::string& host, int port);
|
||||
bool listen(std::string_view host, int port);
|
||||
|
||||
~Web_Server() = default;
|
||||
|
||||
@@ -87,9 +88,9 @@ public:
|
||||
drogon::app().quit();
|
||||
}
|
||||
|
||||
Web_Server& Post(const std::string& pattern, Handler handler) {
|
||||
Web_Server& Post(std::string_view pattern, Handler handler) {
|
||||
drogon::app().registerHandler(
|
||||
pattern,
|
||||
std::string(pattern),
|
||||
[handler](const drogon::HttpRequestPtr& request,
|
||||
std::function<void(const drogon::HttpResponsePtr&)>&& callback) {
|
||||
auto resp = drogon::HttpResponse::newHttpResponse();
|
||||
@@ -105,9 +106,9 @@ public:
|
||||
return *this;
|
||||
}
|
||||
|
||||
Web_Server& PostCoro(const std::string& pattern, CoroHandler handler) {
|
||||
Web_Server& PostCoro(std::string_view pattern, CoroHandler handler) {
|
||||
drogon::app().registerHandler(
|
||||
pattern,
|
||||
std::string(pattern),
|
||||
[handler = std::move(handler)](
|
||||
const drogon::HttpRequestPtr& request,
|
||||
std::function<void(const drogon::HttpResponsePtr&)>&& callback) {
|
||||
@@ -135,9 +136,9 @@ public:
|
||||
return *this;
|
||||
}
|
||||
|
||||
Web_Server& Get(const std::string& pattern, Handler handler) {
|
||||
Web_Server& Get(std::string_view pattern, Handler handler) {
|
||||
drogon::app().registerHandlerViaRegex(
|
||||
pattern,
|
||||
std::string(pattern),
|
||||
[handler](const drogon::HttpRequestPtr& request,
|
||||
std::function<void(const drogon::HttpResponsePtr&)>&& callback) {
|
||||
auto resp = drogon::HttpResponse::newHttpResponse();
|
||||
@@ -153,9 +154,9 @@ public:
|
||||
return *this;
|
||||
}
|
||||
|
||||
Web_Server& GetCoro(const std::string& pattern, CoroHandler handler) {
|
||||
Web_Server& GetCoro(std::string_view pattern, CoroHandler handler) {
|
||||
drogon::app().registerHandlerViaRegex(
|
||||
pattern,
|
||||
std::string(pattern),
|
||||
[handler = std::move(handler)](
|
||||
const drogon::HttpRequestPtr& request,
|
||||
std::function<void(const drogon::HttpResponsePtr&)>&& callback) {
|
||||
@@ -272,8 +273,8 @@ public:
|
||||
Global();
|
||||
~Global();
|
||||
Detach_Thread_Manager thread_manager;
|
||||
std::shared_ptr<Data_Source> source(const std::string& data_source_key) {
|
||||
return mode_acs.data_source_config.map.get(data_source_key).value_or(nullptr);
|
||||
std::shared_ptr<Data_Source> source(std::string_view data_source_key) {
|
||||
return mode_acs.data_source_config.map.get(std::string(data_source_key)).value_or(nullptr);
|
||||
}
|
||||
std::shared_ptr<Data_Source> total_source() {
|
||||
for (auto i : mode_acs.data_source_config.map.list())
|
||||
@@ -293,8 +294,8 @@ public:
|
||||
|
||||
|
||||
|
||||
void handle_buffer_muti_start(std::string& buffer, const std::string& data, const std::set<std::string>& prefix_list,
|
||||
void handle_buffer_muti_start(std::string& buffer, std::string_view data, const std::set<std::string>& prefix_list,
|
||||
const std::function<void(std::string&)>& callback);
|
||||
void handle_buffer_head_tail(std::string& buffer, const std::string& data, const std::string& prefix,
|
||||
const std::string& suffix, const std::function<void(std::string&)>& callback);
|
||||
void handle_buffer_head_tail(std::string& buffer, std::string_view data, std::string_view prefix,
|
||||
std::string_view suffix, const std::function<void(std::string&)>& callback);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user