diff options
author | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2015-01-15 02:16:43 +0100 |
---|---|---|
committer | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2015-01-15 02:16:43 +0100 |
commit | fb9e333486f2a44d5cedeff4c9397db0b1766bca (patch) | |
tree | 11ed6d7dbd63514b38aa76ef8bf338869e700496 /src/core/model | |
parent | 1889a5ca33ac1253ce1b220f667bf0ea94515a1b (diff) |
lambdas are so much cooler
Diffstat (limited to 'src/core/model')
-rw-r--r-- | src/core/model/Node.cpp | 29 |
1 files changed, 10 insertions, 19 deletions
diff --git a/src/core/model/Node.cpp b/src/core/model/Node.cpp index 54512d5..17ee9b3 100644 --- a/src/core/model/Node.cpp +++ b/src/core/model/Node.cpp @@ -352,29 +352,20 @@ std::vector<ResolutionResult> Node::resolve(const std::string &name, return resolve(std::vector<std::string>{name}, type); } -/* Reflection Methods */ - -static Variant getNodeName(const Node *obj) -{ - return Variant::fromString(obj->getName()); -} - -static void setNodeName(const Variant &value, Node *obj) -{ - obj->setName(value.asString()); -} - -static Variant getNodeParent(const Node *obj) -{ - return Variant::fromObject(obj->getParent()); -} - /* RTTI type registrations */ namespace RttiTypes { const Rtti<ousia::Node> Node = TypedRttiBuilder<ousia::Node>("Node") - .property("name", {RttiTypes::String, getNodeName, setNodeName}) - .property("parent", {Node, getNodeParent}); + .property("name", {RttiTypes::String, + {[](const ousia::Node *obj) { + return Variant::fromString(obj->getName()); + }}, + {[](const Variant &value, ousia::Node *obj) { + obj->setName(value.asString()); + }}}) + .property("parent", {Node, {[](const ousia::Node *obj) { + return Variant::fromObject(obj->getParent()); + }}}); } } |