John Smith
john@example.com
---
source: kcl-lib/src/simulation_tests.rs
description: Result of parsing router-template-cross-bar.kcl
{
"Ok": {
"body": [
"commentStart": 0,
"declaration": {
"end": 0,
"id": {
"moduleId": 0,
"name": "routerDiameter",
"start": 0,
"type": "Identifier"
},
"init": {
"raw": "12.7",
"type": "Literal",
"value": {
"value": 12.7,
"suffix": "None"
}
"type": "VariableDeclarator"
"kind": "const",
"preComments": [
"// Define parameters"
],
"type": "VariableDeclaration",
"type": "VariableDeclaration"
"name": "templateDiameter",
"expr": {
"left": {
"raw": "11",
"value": 11.0,
"operator": "/",
"right": {
"raw": "16",
"value": 16.0,
"type": "BinaryExpression",
"type": "BinaryExpression"
"ty": {
"Inch": null,
"p_type": "Number",
"type": "Primitive"
"type": "AscribedExpression",
"type": "AscribedExpression"
"name": "slateWidthHalf",
"raw": "41.5",
"value": 41.5,
"raw": "2",
"value": 2.0,
"name": "minClampingDistance",
"raw": "50",
"value": 50.0,
"operator": "+",
"raw": "30",
"value": 30.0,
"name": "templateThickness",
"raw": "10",
"value": 10.0,
"name": "radius",
"name": "depth",
"name": "templateGap",
"abs_path": false,
"name": {
"path": [],
"type": "Name",
"type": "Name"
"operator": "-",
"raw": "0.5",
"value": 0.5,
"",
"// Calculated parameters"
"name": "distanceToInsideEdge",
"name": "sketch001",
"arguments": [],
"callee": {
"name": "startSketchOn",
"type": "CallExpressionKw",
"unlabeled": {
"name": "XZ",
"arguments": [
"type": "LabeledArg",
"label": {
"name": "at",
"arg": {
"elements": [
"raw": "0",
"value": 0.0,
"type": "ArrayExpression",
"type": "ArrayExpression"
"name": "startProfile",
"unlabeled": null
"name": "length",
"name": "tag",
"type": "TagDeclarator",
"value": "seg01"
"name": "xLine",
"name": "angleStart",
"raw": "90",
"value": 90.0,
"name": "angleEnd",
"value": "seg09"
"name": "arc",
"name": "endAbsolute",
"argument": {
"type": "UnaryExpression",
"type": "UnaryExpression"
"value": "seg03"
"name": "yLine",
"value": "seg07"
"name": "segEndY",
"name": "seg01",
"raw": "2_",
"suffix": "Count"
"value": "seg02"
"name": "segEndX",
"name": "seg03",
"value": "seg06"
"operator": "*",
"value": "seg08"
"name": "seg02",
"value": "seg05"
"value": "seg10"
"value": "seg04"
"name": "segLen",
"name": "seg04",
"name": "seg10",
"name": "seg05",
"name": "seg08",
"name": "seg06",
"name": "seg07",
"raw": "180",
"value": 180.0,
"name": "profileStartX",
"type": "PipeSubstitution",
"type": "PipeSubstitution"
"name": "profileStartY",
"name": "line",
"name": "close",
"nonCodeMeta": {
"nonCodeNodes": {
"22": [
"type": "NonCodeNode",
"type": "newLineBlockComment",
"value": "Extrude the first sketch",
"style": "line"
]
"startNodes": []
"type": "PipeExpression",
"type": "PipeExpression"
"// Create the first sketch"
"name": "extrude001",
"raw": "5",
"value": 5.0,
"name": "extrude",
"name": "sketch002",
"name": "face",
"name": "START",
"name": "angle",
"value": "rectangleSegmentA002"
"name": "angledLine",
"name": "segAng",
"name": "rectangleSegmentA002",
"value": "rectangleSegmentB002"
"value": "rectangleSegmentC002"
"6": [
"value": "Extrude the second sketch",
"// Create the second sketch"
"name": "extrude002",
"raw": "13",
"value": 13.0,
"name": "sketch003",
"value": "rectangleSegmentA001"
"name": "rectangleSegmentA001",
"value": "rectangleSegmentB001"
"value": "rectangleSegmentC001"
"value": "Extrude the third sketch",
"// Create the third sketch"
"name": "extrude003",
"name": "sketch004",
"name": "END",
"value": "rectangleSegmentA003"
"name": "rectangleSegmentA003",
"value": "rectangleSegmentB003"
"value": "rectangleSegmentC003"
"value": "Extrude the fourth sketch",
"// Create the fourth sketch"
"name": "extrude004",
"raw": "4",
"value": 4.0,
"innerAttrs": [
"name": "settings",
"// Router template for a cross bar",
"// A guide for routing a notch into a cross bar.",
"// Set units"
"properties": [
"key": {
"name": "defaultLengthUnit",
"type": "ObjectProperty",
"name": "mm",
"name": "kclVersion",
"raw": "1.0",
"value": 1.0,
"type": "Annotation"
"nonCodeNodes": {},
"startNodes": [
"type": "newLine"
"start": 0