X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/c00e81f9f50c4fe50ee32b02a689d68c9bc595b6..51998949e60e2a7e86e4393b315cfb76a58ca80d:/projects/sgconf/utils.h?ds=sidebyside diff --git a/projects/sgconf/utils.h b/projects/sgconf/utils.h index 2e16b625..6168cbf2 100644 --- a/projects/sgconf/utils.h +++ b/projects/sgconf/utils.h @@ -1,8 +1,7 @@ -#ifndef __STG_SGCONF_UTILS_H__ -#define __STG_SGCONF_UTILS_H__ +#pragma once #include "stg/common.h" -#include "stg/resetable.h" +#include "stg/optional.h" #include #include @@ -12,7 +11,7 @@ namespace SGCONF template inline -void MaybeSet(const std::map & options, const std::string & name, RESETABLE & res) +void MaybeSet(const std::map & options, const std::string & name, STG::Optional & res) { std::map::const_iterator it(options.find(name)); if (it == options.end()) @@ -25,7 +24,7 @@ res = value; template inline -void MaybeSet(const std::map & options, const std::string & name, RESETABLE & res, F conv) +void MaybeSet(const std::map & options, const std::string & name, T & res, F conv) { std::map::const_iterator it(options.find(name)); if (it == options.end()) @@ -35,7 +34,7 @@ conv(it->second, res); template <> inline -void MaybeSet(const std::map & options, const std::string & name, RESETABLE & res) +void MaybeSet(const std::map & options, const std::string & name, STG::Optional & res) { std::map::const_iterator it(options.find(name)); if (it == options.end()) @@ -44,5 +43,3 @@ res = it->second; } } // namespace SGCONF - -#endif