Type check and coerce arguments to user functions and return values from std Rust functions (#6958)

* Shuffle around function call code

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Refactor function calls to share more code

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Hack to leave the result of revolve as a singleton rather than array

Signed-off-by: Nick Cameron <nrc@ncameron.org>

---------

Signed-off-by: Nick Cameron <nrc@ncameron.org>
This commit is contained in:
Nick Cameron
2025-05-19 16:50:15 +12:00
committed by GitHub
parent f3e9d110c0
commit b19acd550d
197 changed files with 13837 additions and 14317 deletions

View File

@ -4,30 +4,30 @@ description: Operations executed spur-gear.kcl
---
[
{
"labeledArgs": {},
"name": "startSketchOn",
"sourceRange": [],
"type": "StdLibCall",
"name": "startSketchOn",
"unlabeledArg": {
"value": {
"type": "Plane",
"artifact_id": "[uuid]"
},
"sourceRange": []
}
},
"labeledArgs": {},
"sourceRange": []
},
{
"labeledArgs": {},
"name": "startSketchOn",
"sourceRange": [],
"type": "StdLibCall",
"name": "startSketchOn",
"unlabeledArg": {
"value": {
"type": "Plane",
"artifact_id": "[uuid]"
},
"sourceRange": []
}
},
"labeledArgs": {},
"sourceRange": []
},
{
"type": "GroupBegin",
@ -42,13 +42,9 @@ description: Operations executed spur-gear.kcl
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Mm"
},
"angle": {
"type": "Degrees"
}
"type": "Known",
"type": "Angle",
"type": "Radians"
}
},
"sourceRange": []
@ -84,15 +80,11 @@ description: Operations executed spur-gear.kcl
"angle": {
"value": {
"type": "Number",
"value": 7.619,
"value": 0.133,
"ty": {
"type": "Default",
"len": {
"type": "Mm"
},
"angle": {
"type": "Degrees"
}
"type": "Known",
"type": "Angle",
"type": "Radians"
}
},
"sourceRange": []
@ -128,15 +120,11 @@ description: Operations executed spur-gear.kcl
"angle": {
"value": {
"type": "Number",
"value": 17.1429,
"value": 0.2992,
"ty": {
"type": "Default",
"len": {
"type": "Mm"
},
"angle": {
"type": "Degrees"
}
"type": "Known",
"type": "Angle",
"type": "Radians"
}
},
"sourceRange": []
@ -162,6 +150,17 @@ description: Operations executed spur-gear.kcl
"sourceRange": []
},
{
"type": "StdLibCall",
"name": "subtract2d",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": []
},
"labeledArgs": {
"tool": {
"value": {
@ -173,9 +172,11 @@ description: Operations executed spur-gear.kcl
"sourceRange": []
}
},
"name": "subtract2d",
"sourceRange": [],
"sourceRange": []
},
{
"type": "StdLibCall",
"name": "extrude",
"unlabeledArg": {
"value": {
"type": "Sketch",
@ -184,9 +185,7 @@ description: Operations executed spur-gear.kcl
}
},
"sourceRange": []
}
},
{
},
"labeledArgs": {
"length": {
"value": {
@ -205,18 +204,7 @@ description: Operations executed spur-gear.kcl
"sourceRange": []
}
},
"name": "extrude",
"sourceRange": [],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": []
}
"sourceRange": []
},
{
"type": "GroupBegin",