#ifndef _PARSE_H
#define _PARSE_H
-// Various routines that deal with parsing; both configuration files and HTTP requests.
+// Various routines that deal with parsing; both HTTP requests and more generic text.
-#include <map>
-#include <vector>
+#include <stddef.h>
#include <string>
-
-struct ConfigLine {
- std::string keyword;
- std::vector<std::string> arguments;
- std::map<std::string, std::string> parameters;
-};
+#include <vector>
// Split a line on whitespace, e.g. "foo bar baz" -> {"foo", "bar", "baz"}.
std::vector<std::string> split_tokens(const std::string &line);
// Split a string on \n or \r\n, e.g. "foo\nbar\r\n\nbaz\r\n\r\n" -> {"foo", "bar", "baz"}.
std::vector<std::string> split_lines(const std::string &str);
-// Parse the configuration file.
-std::vector<ConfigLine> parse_config(const std::string &filename);
-
-// Note: Limits are inclusive.
-int fetch_config_int(const std::vector<ConfigLine> &config, const std::string &keyword, int min_limit, int max_limit);
-
// Add the new data to an existing string, looking for \r\n\r\n
// (typical of HTTP requests and/or responses). Will return one
// of the given statuses.