{####################################################################################### # All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or # its licensors. # # For complete copyright and license terms please see the LICENSE at the root of this # distribution (the "License"). All use of this software is governed by the License, # or, if provided, by the license below or the license accompanying this file. Do not # remove or modify any license notices. This file is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # #####################################################################################-#} {% macro PrintName(uuid, class) %} {% if class.Namespace is defined %} {% set className = "{0}::{1}".format(class.Namespace, class.Name) %} {% else %} {% set className = class.Name %} {% endif %} {% if class.Id == className %} {{ uuid }} - {{class.Id}} {% else %} {{ uuid }} - {{class.Id}} - {{className}} {% endif %} {%- endmacro -%} {% macro PrintPrimitive(context, uuid) %} {% if context[uuid] is defined and context[uuid].IsPrimitive %} [Primitive] {%- endif -%} {%- endmacro -%} {% macro PrintClassContent(context, indention, uuid) %} {% if context[uuid] is defined %} {% for base in context[uuid].Bases -%} {{ ' '|safe*indention}}{{ base.Type }} [Base] {{ PrintClassContent(context, indention + 2, base.Uuid) -}} {% endfor -%} {% for field in context[uuid].Fields -%} {{ ' '|safe*indention}}{{ field.Type }} {{ field.Name }} {{ PrintPrimitive(context, field.Uuid) }} {{ PrintClassContent(context, indention + 2, field.Uuid) -}} {% endfor -%} {% endif -%} {% endmacro -%}