X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fconfigparser.h;h=02619e759fe76b65f4c18a4d61471b6044b223ce;hb=ecef36edcab5219ce1a759eb0d2d24e061b4e886;hp=9b2cd4527db963c8481922344b96054e8051cea7;hpb=2ae42bbb1fbd661f6078fdbeb65e1d430e38c805;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/configparser.h b/include/configparser.h index 9b2cd4527..02619e759 100644 --- a/include/configparser.h +++ b/include/configparser.h @@ -17,6 +17,8 @@ */ +#pragma once + struct fpos { std::string filename; @@ -39,7 +41,7 @@ enum ParseFlags struct ParseStack { std::vector reading; - std::map vars; + insp::flat_map vars; ConfigDataHash& output; ConfigFileCache& FilesOutput; std::stringstream& errstr; @@ -51,8 +53,7 @@ struct ParseStack vars["quot"] = "\""; vars["newline"] = vars["nl"] = "\n"; } - bool ParseFile(const std::string& name, int flags, const std::string& mandatory_tag = ""); - bool ParseExec(const std::string& name, int flags, const std::string& mandatory_tag = ""); + bool ParseFile(const std::string& name, int flags, const std::string& mandatory_tag = std::string(), bool isexec = false); void DoInclude(ConfigTag* includeTag, int flags); void DoReadFile(const std::string& key, const std::string& file, int flags, bool exec); }; @@ -76,5 +77,3 @@ struct FileWrapper } } }; - -