From 8d96730e6495759d044021ad983fcabf6a5bbb92 Mon Sep 17 00:00:00 2001 From: Ivan Smolin Date: Wed, 7 Jun 2017 20:33:36 +0300 Subject: [PATCH] Enum template --- Swift/Enum.swift.template | 23 +++++++++++++++++++++++ Swift/swift-utils.twig | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 Swift/Enum.swift.template create mode 100644 Swift/swift-utils.twig diff --git a/Swift/Enum.swift.template b/Swift/Enum.swift.template new file mode 100644 index 0000000..99a058c --- /dev/null +++ b/Swift/Enum.swift.template @@ -0,0 +1,23 @@ +{%- import 'swift-utils.twig' as utils -%} + +import Foundation + +/// {{ description }} +/// +{% for value in values -%} +/// - {{ utils.decapitalize(value.name) }}: {{ value.description }} +{% endfor -%} +enum {{ name }}: {% if valuesTypes == "STRING" -%} +String +{%- elseif valuesTypes == "INT" -%} +Int +{%- endif %} { + + {% for value in values -%} + case {{ utils.decapitalize(value.name) }} = {% if valuesTypes == "STRING" -%} + "{{ value.value }}" + {% else %} + {{- value.value }} + {% endif -%} + {% endfor %} +} \ No newline at end of file diff --git a/Swift/swift-utils.twig b/Swift/swift-utils.twig new file mode 100644 index 0000000..1341fec --- /dev/null +++ b/Swift/swift-utils.twig @@ -0,0 +1,3 @@ +{% macro decapitalize (text) %} +{{- concat(slice(text, 0, 1) | lower, slice(text, 1, text | length)) -}} +{% endmacro %} \ No newline at end of file