override fun structureShape()

in smithy-swift-codegen/src/main/kotlin/software/amazon/smithy/swift/codegen/SymbolVisitor.kt [152:168]


    override fun structureShape(shape: StructureShape): Symbol {
        val name = shape.defaultName(service)
        val builder = createSymbolBuilder(shape, name, boxed = true)
            .definitionFile(formatModuleName(shape.type, name))

        // add a reference to each member symbol
        addDeclareMemberReferences(builder, shape.allMembers.values)

        if (shape.hasTrait<NestedTrait>() && service != null && !shape.hasTrait<ErrorTrait>()) {
            builder.namespace(service.nestedNamespaceType(this).name, ".")
        }

        if (shape.hasTrait<ErrorTrait>()) {
            builder.addDependency(SwiftDependency.CLIENT_RUNTIME)
        }
        return builder.build()
    }