{% macro decapitalize(text) %} {{- concat(slice(text, 0, 1) | lower, slice(text, 1, text | length)) -}} {% endmacro %} {% macro enumType(valuesTypes) %} {%- if valuesTypes == "STRING" -%} String {%- elseif valuesTypes == "INT" -%} Int {%- endif -%} {% endmacro %} {% macro parentClassType(parent) %} {%- if parent is not null %} {{- parent.type.baseTypeName -}} {%- else -%} LoganSquareJsonModel {%- endif -%} {% endmacro %} {% macro writeNullCheckAnnotation(baseTypeName, nullable, optional) %} {%- if optional -%} @NonNull {%- elseif nullable -%} @Nullable {%- elseif not (baseTypeName == "Int" or baseTypeName == "Long" or baseTypeName == "Double" or baseTypeName == "Bool") -%} @NonNull {%- endif -%} {% endmacro %} {% macro formatNonOptionalValueType(valueType, tryUsePrimitive) %} {% import _self as self %} {%- if valueType.baseTypeName == "Int" -%} {%- if tryUsePrimitive -%}int{%- else -%}Integer{%- endif -%} {%- elseif valueType.baseTypeName == "Long" -%} {%- if tryUsePrimitive -%}long{%- else -%}Long{%- endif -%} {%- elseif valueType.baseTypeName == "Double" -%} {%- if tryUsePrimitive -%}double{%- else -%}Double{%- endif -%} {%- elseif valueType.baseTypeName == "Decimal" -%} BigDecimal {%- elseif valueType.baseTypeName == "Bool" -%} {%- if tryUsePrimitive -%}bool{%- else -%}Boolean{%- endif -%} {%- elseif valueType.baseTypeName == "Map" -%} Map<{{ self.formatNonOptionalValueType(valueType.keysType, false) }}, {{ self.formatNonOptionalValueType(valueType.valuesType, false) }}> {%- elseif valueType.baseTypeName == "Array" -%} List<{{ self.formatNonOptionalValueType(valueType.itemsType, false) }}> {%- else -%} {{ valueType.baseTypeName }} {%- endif -%} {% endmacro %} {% macro formatValueType(valueType, nullable, optional) %} {% import _self as self %} {%- if optional -%} JsonOptional<{{ self.formatNonOptionalValueType(valueType, false) }}> {%- else -%} {{ self.formatNonOptionalValueType(valueType, not nullable) }} {%- endif -%} {% endmacro %} {% macro formatSimpleValueType(valueType) %} {%- import _self as self -%} {{- self.formatValueType(valueType, true, false) -}} {% endmacro %} {% macro escapeIfNeeded(expr) %} {%- if expr == "default" -%} `{{ expr }}` {%- else -%} {{ expr }} {%- endif -%} {% endmacro %} {% macro mappingFromMapForField(field) %} {%- if field.type.type.baseTypeName == "DateTime" -%} map.value("{{ field.jsonName }}", using: {{ field.name -}}Transform) {%- else -%} map.value("{{ field.jsonName }}") {%- endif -%} {% endmacro %} {% macro mappingToMapForField(field) %} {%- if field.type.type.baseTypeName == "DateTime" -%} (map["{{ field.jsonName }}"], {{ field.name -}}Transform) {%- else -%} map["{{ field.jsonName }}"] {%- endif -%} {% endmacro %}