1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-11-23 03:32:32 +00:00

Merge pull request #1111 from TomHarte/LessDynamic

Add note to future self.
This commit is contained in:
Thomas Harte 2022-12-27 20:24:28 -05:00 committed by GitHub
commit 4eedec50fb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -49,6 +49,18 @@ template<typename T> class TypedDynamicMachine: public ::Machine::DynamicMachine
private:
template <typename Class> Class *get() {
return dynamic_cast<Class *>(machine_.get());
// Note to self: the below is not [currently] used
// because in practice TypedDynamicMachine is instantiated
// with an abstract parent of the actual class.
//
// TODO: rethink type hiding here. I think I've boxed myself
// into an uncomfortable corner.
// if constexpr (std::is_base_of_v<Class, T>) {
// return static_cast<Class *>(machine_.get());
// } else {
// return nullptr;
// }
}
std::unique_ptr<T> machine_;
};