// paramsStructStruct returns the string representation of a structure func (f paramFiller) paramsStructStruct(value map[string]interface{}, shape *api.Shape) string { out := "&" + f.typeName(shape)[1:] + "{\n" for _, n := range shape.MemberNames() { ref := shape.MemberRefs[n] name := findParamMember(value, n) if val := f.paramsStructAny(value[name], ref.Shape); val != "" { out += fmt.Sprintf("%s: %s,\n", n, val) } } out += "}" return out }
// typeName returns the type name of a shape. func (f paramFiller) typeName(shape *api.Shape) string { if f.prefixPackageName && shape.Type == "structure" { return "*" + shape.API.PackageName() + "." + shape.GoTypeElem() } return shape.GoType() }