config/Data: move std::chrono parsers from Global.hxx
This commit is contained in:
@@ -23,6 +23,7 @@
|
||||
#include "Option.hxx"
|
||||
|
||||
#include <array>
|
||||
#include <chrono>
|
||||
|
||||
struct ConfigParam;
|
||||
struct ConfigBlock;
|
||||
@@ -55,9 +56,25 @@ struct ConfigData {
|
||||
unsigned GetUnsigned(ConfigOption option,
|
||||
unsigned default_value) const;
|
||||
|
||||
std::chrono::steady_clock::duration
|
||||
GetUnsigned(ConfigOption option,
|
||||
std::chrono::steady_clock::duration default_value) const {
|
||||
// TODO: allow unit suffixes
|
||||
auto u = GetUnsigned(option, default_value.count());
|
||||
return std::chrono::steady_clock::duration(u);
|
||||
}
|
||||
|
||||
unsigned GetPositive(ConfigOption option,
|
||||
unsigned default_value) const;
|
||||
|
||||
std::chrono::steady_clock::duration
|
||||
GetPositive(ConfigOption option,
|
||||
std::chrono::steady_clock::duration default_value) const {
|
||||
// TODO: allow unit suffixes
|
||||
auto u = GetPositive(option, default_value.count());
|
||||
return std::chrono::steady_clock::duration(u);
|
||||
}
|
||||
|
||||
bool GetBool(ConfigOption option, bool default_value) const;
|
||||
|
||||
gcc_pure
|
||||
|
||||
@@ -23,8 +23,6 @@
|
||||
#include "Option.hxx"
|
||||
#include "Compiler.h"
|
||||
|
||||
#include <chrono>
|
||||
|
||||
class Path;
|
||||
class AllocatedPath;
|
||||
struct ConfigData;
|
||||
@@ -76,27 +74,9 @@ config_get_path(enum ConfigOption option);
|
||||
unsigned
|
||||
config_get_unsigned(enum ConfigOption option, unsigned default_value);
|
||||
|
||||
static inline std::chrono::steady_clock::duration
|
||||
config_get_unsigned(ConfigOption option,
|
||||
std::chrono::steady_clock::duration default_value)
|
||||
{
|
||||
// TODO: allow unit suffixes
|
||||
auto u = config_get_unsigned(option, default_value.count());
|
||||
return std::chrono::steady_clock::duration(u);
|
||||
}
|
||||
|
||||
unsigned
|
||||
config_get_positive(enum ConfigOption option, unsigned default_value);
|
||||
|
||||
static inline std::chrono::steady_clock::duration
|
||||
config_get_positive(ConfigOption option,
|
||||
std::chrono::steady_clock::duration default_value)
|
||||
{
|
||||
// TODO: allow unit suffixes
|
||||
auto u = config_get_positive(option, default_value.count());
|
||||
return std::chrono::steady_clock::duration(u);
|
||||
}
|
||||
|
||||
bool config_get_bool(enum ConfigOption option, bool default_value);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user