MCPcopy Create free account
hub / github.com/Autodesk/AutomaticComponentToolkit / getCSharpPlainParameters

Function getCSharpPlainParameters

Source/buildbindingcsharp.go:219–267  ·  view source on GitHub ↗
(method ComponentDefinitionMethod, NameSpace string, ClassName string, isGlobal bool)

Source from the content-addressed store, hash-verified

217}
218
219func getCSharpPlainParameters(method ComponentDefinitionMethod, NameSpace string, ClassName string, isGlobal bool) (string, error) {
220 parameters := ""
221
222 for k := 0; k < len(method.Params); k++ {
223 param := method.Params[k]
224 ParamTypeName, err := getCSharpParameterType(param.ParamType, NameSpace, param.ParamClass, true)
225 if err != nil {
226 return "", err
227 }
228
229 switch param.ParamPass {
230 case "in":
231 if parameters != "" {
232 parameters = parameters + ", "
233 }
234
235 switch param.ParamType {
236 case "basicarray":
237 parameters = parameters + fmt.Sprintf("UInt64 size%s, IntPtr data%s", param.ParamName, param.ParamName)
238 case "structarray":
239 parameters = parameters + fmt.Sprintf("UInt64 size%s, IntPtr data%s", param.ParamName, param.ParamName)
240
241 default:
242
243 parameters = parameters + ParamTypeName + " A" + param.ParamName
244 }
245
246 case "out", "return":
247 if parameters != "" {
248 parameters = parameters + ", "
249 }
250
251 switch param.ParamType {
252 case "string":
253 parameters = parameters + fmt.Sprintf("UInt32 size%s, out UInt32 needed%s, IntPtr data%s", param.ParamName, param.ParamName, param.ParamName)
254 case "basicarray":
255 parameters = parameters + fmt.Sprintf("UInt64 size%s, out UInt64 needed%s, IntPtr data%s", param.ParamName, param.ParamName, param.ParamName)
256 case "structarray":
257 parameters = parameters + fmt.Sprintf("UInt64 size%s, out UInt64 needed%s, IntPtr data%s", param.ParamName, param.ParamName, param.ParamName)
258
259 default:
260 parameters = parameters + "out " + ParamTypeName + " A" + param.ParamName
261 }
262
263 }
264 }
265
266 return parameters, nil
267}
268
269func getCSharpClassParameters(method ComponentDefinitionMethod, NameSpace string, ClassName string, isGlobal bool) (string, string, error) {
270 parameters := ""

Callers 1

Calls 1

getCSharpParameterTypeFunction · 0.85

Tested by

no test coverage detected