summaryrefslogtreecommitdiff
path: root/src/option_manager.hh
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2017-03-15 17:42:02 +0000
committerMaxime Coste <mawww@kakoune.org>2017-03-15 17:42:02 +0000
commita49e175727928b8b45c0c2ccdb01f143ea6d18c2 (patch)
tree88c1c3909c2ab06394a63af5ebab8fdcd0a389f0 /src/option_manager.hh
parenta88e58763bd33e021511d2e821703f478afd85bf (diff)
Migrate to a more value based meta programming model
Introduce Meta::Type<T> to store a type as value, and pass it around, migrate enum_desc and option_type_name to this.
Diffstat (limited to 'src/option_manager.hh')
-rw-r--r--src/option_manager.hh4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/option_manager.hh b/src/option_manager.hh
index 958a01f4..e794a3c9 100644
--- a/src/option_manager.hh
+++ b/src/option_manager.hh
@@ -221,8 +221,8 @@ public:
return **it;
throw runtime_error{format("option '{}' already declared with different type or flags", name)};
}
- String doc = docstring.empty() ? format("[{}]", option_type_name<T>::name())
- : format("[{}] - {}", option_type_name<T>::name(), docstring);
+ String doc = docstring.empty() ? format("[{}]", option_type_name(Meta::Type<T>{}))
+ : format("[{}] - {}", option_type_name(Meta::Type<T>{}), docstring);
m_descs.emplace_back(new OptionDesc{name.str(), std::move(doc), flags});
opts.emplace_back(new TypedCheckedOption<T, validator>{m_global_manager, *m_descs.back(), value});
return *opts.back();