From 58d568140197771b0c037117ae94bf250dfcbf09 Mon Sep 17 00:00:00 2001 From: tobias <thinkdifferent055@gmail.com> Date: Fri, 25 Jun 2021 19:12:46 +0200 Subject: [PATCH] Generate value getter method --- .../templates/meta_model.stencil | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/SwiftMetaModelGenerator/templates/meta_model.stencil b/SwiftMetaModelGenerator/templates/meta_model.stencil index 347277d..8830de7 100644 --- a/SwiftMetaModelGenerator/templates/meta_model.stencil +++ b/SwiftMetaModelGenerator/templates/meta_model.stencil @@ -30,6 +30,20 @@ extension {{class.name}} fatalError("Cannot set value for key \(key)") } } + + @objc {% if class.needsMethodOverride %} override {% endif %} func getValueByKey(key: String) -> Any? + { + switch key { + {% for variable in class.variables %} + {% if not variable.constant and not variable.privateVisibility and not variable.staticModifier and not variable.hasAccessor %} + case "{{variable.name}}": + return self.{{ variable.name }} + {% endif %} + {% endfor %} + default: + fatalError("Cannot set value for key \(key)") + } + } } {% endfor %} -- GitLab