diff options
author | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2015-01-12 19:47:43 +0100 |
---|---|---|
committer | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2015-01-12 19:47:43 +0100 |
commit | fa387f9bef0d1a70a4b40c28c5cf9d661c421f73 (patch) | |
tree | c1857d0d7fc0a8db8c1f3a841913b1f496d8e661 /src/core/common/Variant.hpp | |
parent | 2b15fcab4b81fa8a854e724c48ee9c771fb126f8 (diff) | |
parent | 55f943ba1b31542157b984b5955b91261c280f46 (diff) |
Merge branch 'master' of somweyr.de:ousia
Conflicts:
application/src/core/model/Document.hpp
Diffstat (limited to 'src/core/common/Variant.hpp')
-rw-r--r-- | src/core/common/Variant.hpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/core/common/Variant.hpp b/src/core/common/Variant.hpp index 27dfda8..e5bca4d 100644 --- a/src/core/common/Variant.hpp +++ b/src/core/common/Variant.hpp @@ -342,6 +342,19 @@ public: Variant(mapType m) : ptrVal(nullptr) { setMap(std::move(m)); } /** + * Named constructor for object values. + * + * @param o is an object that can be converted to a Rooted handle. + */ + template<class T> + static Variant fromObject(T o) + { + Variant res; + res.setObject(o); + return res; + } + + /** * Named constructor for function values. * * @param f is a shared pointer pointing at the Function instance. @@ -900,7 +913,7 @@ public: * to a Rooted handle. */ template <class T> - void setObject(Handle<T> o) + void setObject(T o) { destroy(); type = VariantType::OBJECT; |