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()
}