Files
modeling-app/rust/kcl-lib/tests/kcl_samples/lego/ast.snap
Nick Cameron 461a2c3ab2 Support comments on attributes (#5850)
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2025-03-20 16:23:20 +13:00

2988 lines
98 KiB
Plaintext

---
source: kcl-lib/src/simulation_tests.rs
description: Result of parsing lego.kcl
---
{
"Ok": {
"body": [
{
"commentStart": 271,
"declaration": {
"commentStart": 293,
"end": 0,
"id": {
"commentStart": 293,
"end": 0,
"name": "lbumps",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 302,
"end": 0,
"raw": "10",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 10.0,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"preComments": [
"// Define constants"
],
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 304,
"declaration": {
"commentStart": 329,
"end": 0,
"id": {
"commentStart": 329,
"end": 0,
"name": "wbumps",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 338,
"end": 0,
"raw": "5",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 5.0,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 339,
"declaration": {
"commentStart": 364,
"end": 0,
"id": {
"commentStart": 364,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 372,
"end": 0,
"raw": "8.0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 8.0,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 376,
"declaration": {
"commentStart": 376,
"end": 0,
"id": {
"commentStart": 376,
"end": 0,
"name": "clearance",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 388,
"end": 0,
"raw": "0.1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.1,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 392,
"declaration": {
"commentStart": 392,
"end": 0,
"id": {
"commentStart": 392,
"end": 0,
"name": "bumpDiam",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 403,
"end": 0,
"raw": "4.8",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 4.8,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 407,
"declaration": {
"commentStart": 407,
"end": 0,
"id": {
"commentStart": 407,
"end": 0,
"name": "bumpHeight",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 420,
"end": 0,
"raw": "1.8",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.8,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 424,
"declaration": {
"commentStart": 424,
"end": 0,
"id": {
"commentStart": 424,
"end": 0,
"name": "height",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 433,
"end": 0,
"raw": "3.2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.2,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 437,
"declaration": {
"commentStart": 437,
"end": 0,
"id": {
"commentStart": 437,
"end": 0,
"name": "t",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 442,
"end": 0,
"left": {
"commentStart": 442,
"end": 0,
"left": {
"commentStart": 442,
"end": 0,
"left": {
"commentStart": 442,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 451,
"end": 0,
"left": {
"commentStart": 451,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"commentStart": 455,
"end": 0,
"name": "clearance",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"commentStart": 468,
"end": 0,
"name": "bumpDiam",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "/",
"right": {
"commentStart": 480,
"end": 0,
"raw": "2.0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 484,
"declaration": {
"commentStart": 484,
"end": 0,
"id": {
"commentStart": 484,
"end": 0,
"name": "postDiam",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 495,
"end": 0,
"left": {
"commentStart": 495,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 503,
"end": 0,
"name": "t",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 504,
"declaration": {
"commentStart": 525,
"end": 0,
"id": {
"commentStart": 525,
"end": 0,
"name": "totalLength",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 539,
"end": 0,
"left": {
"commentStart": 539,
"end": 0,
"left": {
"commentStart": 539,
"end": 0,
"name": "lbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "*",
"right": {
"commentStart": 548,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"commentStart": 557,
"end": 0,
"left": {
"commentStart": 557,
"end": 0,
"raw": "2.0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"commentStart": 563,
"end": 0,
"name": "clearance",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 574,
"declaration": {
"commentStart": 574,
"end": 0,
"id": {
"commentStart": 574,
"end": 0,
"name": "totalWidth",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 587,
"end": 0,
"left": {
"commentStart": 587,
"end": 0,
"left": {
"commentStart": 587,
"end": 0,
"name": "wbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "*",
"right": {
"commentStart": 596,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"commentStart": 605,
"end": 0,
"left": {
"commentStart": 605,
"end": 0,
"raw": "2.0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"commentStart": 611,
"end": 0,
"name": "clearance",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 621,
"declaration": {
"commentStart": 683,
"end": 0,
"id": {
"commentStart": 683,
"end": 0,
"name": "lSegments",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 695,
"end": 0,
"left": {
"commentStart": 695,
"end": 0,
"name": "totalLength",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"commentStart": 709,
"end": 0,
"name": "lbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"preComments": [
"",
"",
"// Calculate the number of segments in the length and width"
],
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 716,
"declaration": {
"commentStart": 716,
"end": 0,
"id": {
"commentStart": 716,
"end": 0,
"name": "wSegments",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 728,
"end": 0,
"left": {
"commentStart": 728,
"end": 0,
"name": "totalWidth",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"commentStart": 741,
"end": 0,
"name": "wbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 747,
"end": 0,
"expression": {
"arguments": [
{
"commentStart": 839,
"end": 0,
"name": "lbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
{
"commentStart": 847,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
{
"commentStart": 850,
"end": 0,
"raw": "\"lbumps must be greater than 1\"",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": "lbumps must be greater than 1"
}
],
"callee": {
"commentStart": 821,
"end": 0,
"name": "assertGreaterThan",
"start": 0,
"type": "Identifier"
},
"commentStart": 821,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"preComments": [
"",
"",
"// Add assertions to ensure that the number of bumps are greater than 1"
],
"start": 0,
"type": "ExpressionStatement",
"type": "ExpressionStatement"
},
{
"commentStart": 883,
"end": 0,
"expression": {
"arguments": [
{
"commentStart": 901,
"end": 0,
"name": "wbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
{
"commentStart": 909,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
{
"commentStart": 912,
"end": 0,
"raw": "\"wbumps must be greater than 1\"",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": "wbumps must be greater than 1"
}
],
"callee": {
"commentStart": 883,
"end": 0,
"name": "assertGreaterThan",
"start": 0,
"type": "Identifier"
},
"commentStart": 883,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "ExpressionStatement",
"type": "ExpressionStatement"
},
{
"commentStart": 944,
"declaration": {
"commentStart": 963,
"end": 0,
"id": {
"commentStart": 963,
"end": 0,
"name": "base",
"start": 0,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"commentStart": 984,
"end": 0,
"raw": "'XY'",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": "XY"
}
],
"callee": {
"commentStart": 970,
"end": 0,
"name": "startSketchOn",
"start": 0,
"type": "Identifier"
},
"commentStart": 970,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"commentStart": 1010,
"elements": [
{
"commentStart": 1011,
"end": 0,
"left": {
"argument": {
"commentStart": 1012,
"end": 0,
"name": "totalWidth",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"commentStart": 1011,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"commentStart": 1025,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"commentStart": 1028,
"end": 0,
"left": {
"argument": {
"commentStart": 1029,
"end": 0,
"name": "totalLength",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"commentStart": 1028,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"commentStart": 1043,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"commentStart": 1047,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"commentStart": 995,
"end": 0,
"name": "startProfileAt",
"start": 0,
"type": "Identifier"
},
"commentStart": 995,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1060,
"end": 0,
"name": "end",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1066,
"elements": [
{
"commentStart": 1067,
"end": 0,
"name": "totalWidth",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
{
"commentStart": 1079,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"commentStart": 1055,
"end": 0,
"name": "line",
"start": 0,
"type": "Identifier"
},
"commentStart": 1055,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1093,
"end": 0,
"name": "end",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1099,
"elements": [
{
"commentStart": 1100,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 1103,
"end": 0,
"name": "totalLength",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"commentStart": 1088,
"end": 0,
"name": "line",
"start": 0,
"type": "Identifier"
},
"commentStart": 1088,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1127,
"end": 0,
"name": "end",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1133,
"elements": [
{
"argument": {
"commentStart": 1135,
"end": 0,
"name": "totalWidth",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"commentStart": 1134,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"commentStart": 1147,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"commentStart": 1122,
"end": 0,
"name": "line",
"start": 0,
"type": "Identifier"
},
"commentStart": 1122,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [],
"callee": {
"commentStart": 1156,
"end": 0,
"name": "close",
"start": 0,
"type": "Identifier"
},
"commentStart": 1156,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1177,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1186,
"end": 0,
"name": "height",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"commentStart": 1169,
"end": 0,
"name": "extrude",
"start": 0,
"type": "Identifier"
},
"commentStart": 1169,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"commentStart": 970,
"end": 0,
"nonCodeMeta": {
"nonCodeNodes": {
"6": [
{
"commentStart": 1193,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "Sketch and extrude a rectangular shape to create the shell underneath the lego. Will replace with shell function when able to call a face created from shell.",
"style": "line"
}
}
]
},
"startNodes": []
},
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"preComments": [
"",
"",
"// Make the base"
],
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 1356,
"declaration": {
"commentStart": 1356,
"end": 0,
"id": {
"commentStart": 1356,
"end": 0,
"name": "shellExtrude",
"start": 0,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"commentStart": 1385,
"end": 0,
"name": "base",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
{
"commentStart": 1391,
"end": 0,
"raw": "\"start\"",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": "start"
}
],
"callee": {
"commentStart": 1371,
"end": 0,
"name": "startSketchOn",
"start": 0,
"type": "Identifier"
},
"commentStart": 1371,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"commentStart": 1420,
"elements": [
{
"argument": {
"commentStart": 1431,
"end": 0,
"left": {
"commentStart": 1431,
"end": 0,
"left": {
"commentStart": 1431,
"end": 0,
"name": "totalWidth",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"commentStart": 1444,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"commentStart": 1448,
"end": 0,
"name": "t",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"commentStart": 1429,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"argument": {
"commentStart": 1461,
"end": 0,
"left": {
"commentStart": 1461,
"end": 0,
"left": {
"commentStart": 1461,
"end": 0,
"name": "totalLength",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"commentStart": 1475,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"commentStart": 1479,
"end": 0,
"name": "t",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"commentStart": 1459,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"commentStart": 1490,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"commentStart": 1405,
"end": 0,
"name": "startProfileAt",
"start": 0,
"type": "Identifier"
},
"commentStart": 1405,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1503,
"end": 0,
"name": "end",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1509,
"elements": [
{
"commentStart": 1510,
"end": 0,
"left": {
"commentStart": 1510,
"end": 0,
"name": "totalWidth",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 1524,
"end": 0,
"left": {
"commentStart": 1524,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"commentStart": 1528,
"end": 0,
"name": "t",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"commentStart": 1532,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"commentStart": 1498,
"end": 0,
"name": "line",
"start": 0,
"type": "Identifier"
},
"commentStart": 1498,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1546,
"end": 0,
"name": "end",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1552,
"elements": [
{
"commentStart": 1553,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 1556,
"end": 0,
"left": {
"commentStart": 1556,
"end": 0,
"name": "totalLength",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 1571,
"end": 0,
"left": {
"commentStart": 1571,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"commentStart": 1575,
"end": 0,
"name": "t",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"commentStart": 1541,
"end": 0,
"name": "line",
"start": 0,
"type": "Identifier"
},
"commentStart": 1541,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1590,
"end": 0,
"name": "end",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1596,
"elements": [
{
"argument": {
"commentStart": 1599,
"end": 0,
"left": {
"commentStart": 1599,
"end": 0,
"name": "totalWidth",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 1613,
"end": 0,
"left": {
"commentStart": 1613,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"commentStart": 1617,
"end": 0,
"name": "t",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"commentStart": 1597,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"commentStart": 1622,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"commentStart": 1585,
"end": 0,
"name": "line",
"start": 0,
"type": "Identifier"
},
"commentStart": 1585,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [],
"callee": {
"commentStart": 1631,
"end": 0,
"name": "close",
"start": 0,
"type": "Identifier"
},
"commentStart": 1631,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1652,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"argument": {
"commentStart": 1663,
"end": 0,
"left": {
"commentStart": 1663,
"end": 0,
"name": "height",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 1672,
"end": 0,
"name": "t",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"commentStart": 1661,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
}
],
"callee": {
"commentStart": 1644,
"end": 0,
"name": "extrude",
"start": 0,
"type": "Identifier"
},
"commentStart": 1644,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"commentStart": 1371,
"end": 0,
"nonCodeMeta": {
"nonCodeNodes": {
"6": [
{
"commentStart": 1675,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "Create the pegs on the top of the base",
"style": "line"
}
}
]
},
"startNodes": []
},
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 1719,
"declaration": {
"commentStart": 1719,
"end": 0,
"id": {
"commentStart": 1719,
"end": 0,
"name": "peg",
"start": 0,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"commentStart": 1739,
"end": 0,
"name": "base",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
{
"commentStart": 1745,
"end": 0,
"raw": "'end'",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": "end"
}
],
"callee": {
"commentStart": 1725,
"end": 0,
"name": "startSketchOn",
"start": 0,
"type": "Identifier"
},
"commentStart": 1725,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1772,
"end": 0,
"name": "center",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1781,
"elements": [
{
"argument": {
"commentStart": 1794,
"end": 0,
"left": {
"commentStart": 1794,
"end": 0,
"left": {
"commentStart": 1794,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "*",
"right": {
"commentStart": 1803,
"end": 0,
"left": {
"commentStart": 1803,
"end": 0,
"name": "wbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 1812,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "/",
"right": {
"commentStart": 1817,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"commentStart": 1792,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"argument": {
"commentStart": 1832,
"end": 0,
"left": {
"commentStart": 1832,
"end": 0,
"left": {
"commentStart": 1832,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "*",
"right": {
"commentStart": 1841,
"end": 0,
"left": {
"commentStart": 1841,
"end": 0,
"name": "lbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 1850,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "/",
"right": {
"commentStart": 1855,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"commentStart": 1830,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 1875,
"end": 0,
"name": "radius",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1884,
"end": 0,
"left": {
"commentStart": 1884,
"end": 0,
"name": "bumpDiam",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"commentStart": 1895,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"commentStart": 1757,
"end": 0,
"name": "circle",
"start": 0,
"type": "Identifier"
},
"commentStart": 1757,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1933,
"end": 0,
"name": "axis",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1940,
"elements": [
{
"commentStart": 1941,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
{
"commentStart": 1944,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 1955,
"end": 0,
"name": "instances",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1967,
"end": 0,
"name": "wbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 1982,
"end": 0,
"name": "distance",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1993,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"commentStart": 1909,
"end": 0,
"name": "patternLinear2d",
"start": 0,
"type": "Identifier"
},
"commentStart": 1909,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 2035,
"end": 0,
"name": "axis",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2042,
"elements": [
{
"commentStart": 2043,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 2046,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 2057,
"end": 0,
"name": "instances",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2069,
"end": 0,
"name": "lbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 2084,
"end": 0,
"name": "distance",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2095,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"commentStart": 2011,
"end": 0,
"name": "patternLinear2d",
"start": 0,
"type": "Identifier"
},
"commentStart": 2011,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 2121,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2130,
"end": 0,
"name": "bumpHeight",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"commentStart": 2113,
"end": 0,
"name": "extrude",
"start": 0,
"type": "Identifier"
},
"commentStart": 2113,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"commentStart": 1725,
"end": 0,
"nonCodeMeta": {
"nonCodeNodes": {
"4": [
{
"commentStart": 2141,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "Create the pegs on the bottom of the base",
"style": "line"
}
}
]
},
"startNodes": []
},
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 2188,
"declaration": {
"commentStart": 2188,
"end": 0,
"id": {
"commentStart": 2188,
"end": 0,
"name": "tubePattern",
"start": 0,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"commentStart": 2216,
"end": 0,
"name": "shellExtrude",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
{
"commentStart": 2230,
"end": 0,
"raw": "'start'",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": "start"
}
],
"callee": {
"commentStart": 2202,
"end": 0,
"name": "startSketchOn",
"start": 0,
"type": "Identifier"
},
"commentStart": 2202,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 2259,
"end": 0,
"name": "center",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2268,
"elements": [
{
"argument": {
"commentStart": 2281,
"end": 0,
"left": {
"commentStart": 2281,
"end": 0,
"left": {
"commentStart": 2281,
"end": 0,
"left": {
"commentStart": 2281,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "*",
"right": {
"commentStart": 2290,
"end": 0,
"left": {
"commentStart": 2290,
"end": 0,
"name": "wbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 2299,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "/",
"right": {
"commentStart": 2304,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"commentStart": 2309,
"end": 0,
"left": {
"commentStart": 2309,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"commentStart": 2317,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"commentStart": 2279,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"argument": {
"commentStart": 2333,
"end": 0,
"left": {
"commentStart": 2333,
"end": 0,
"left": {
"commentStart": 2333,
"end": 0,
"left": {
"commentStart": 2333,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "*",
"right": {
"commentStart": 2342,
"end": 0,
"left": {
"commentStart": 2342,
"end": 0,
"name": "lbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 2351,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "/",
"right": {
"commentStart": 2356,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"commentStart": 2361,
"end": 0,
"left": {
"commentStart": 2361,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"commentStart": 2369,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"commentStart": 2331,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 2390,
"end": 0,
"name": "radius",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2399,
"end": 0,
"left": {
"commentStart": 2399,
"end": 0,
"name": "bumpDiam",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"commentStart": 2410,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"commentStart": 2244,
"end": 0,
"name": "circle",
"start": 0,
"type": "Identifier"
},
"commentStart": 2244,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 2448,
"end": 0,
"name": "axis",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2455,
"elements": [
{
"commentStart": 2456,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
{
"commentStart": 2459,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 2470,
"end": 0,
"name": "instances",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2482,
"end": 0,
"left": {
"commentStart": 2482,
"end": 0,
"name": "wbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 2491,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 2501,
"end": 0,
"name": "distance",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2512,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"commentStart": 2424,
"end": 0,
"name": "patternLinear2d",
"start": 0,
"type": "Identifier"
},
"commentStart": 2424,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 2554,
"end": 0,
"name": "axis",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2561,
"elements": [
{
"commentStart": 2562,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 2565,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 2576,
"end": 0,
"name": "instances",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2588,
"end": 0,
"left": {
"commentStart": 2588,
"end": 0,
"name": "lbumps",
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"commentStart": 2597,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 2607,
"end": 0,
"name": "distance",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2618,
"end": 0,
"name": "pitch",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"commentStart": 2530,
"end": 0,
"name": "patternLinear2d",
"start": 0,
"type": "Identifier"
},
"commentStart": 2530,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 2644,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 2653,
"end": 0,
"name": "bumpHeight",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"commentStart": 2636,
"end": 0,
"name": "extrude",
"start": 0,
"type": "Identifier"
},
"commentStart": 2636,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"commentStart": 2202,
"end": 0,
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
}
],
"commentStart": 0,
"end": 0,
"innerAttrs": [
{
"commentStart": 0,
"end": 0,
"name": {
"commentStart": 239,
"end": 0,
"name": "settings",
"start": 0,
"type": "Identifier"
},
"preComments": [
"// Lego Brick",
"// A standard Lego brick. This is a small, plastic construction block toy that can be interlocked with other blocks to build various structures, models, and figures. There are a lot of hacks used in this code.",
"",
"",
"// Set Units"
],
"properties": [
{
"commentStart": 248,
"end": 0,
"key": {
"commentStart": 248,
"end": 0,
"name": "defaultLengthUnit",
"start": 0,
"type": "Identifier"
},
"start": 0,
"type": "ObjectProperty",
"value": {
"commentStart": 268,
"end": 0,
"name": "in",
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
}
],
"start": 0,
"type": "Annotation"
}
],
"nonCodeMeta": {
"nonCodeNodes": {
"0": [
{
"commentStart": 304,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "inlineComment",
"value": "number of bumps long",
"style": "line"
}
}
],
"1": [
{
"commentStart": 339,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "inlineComment",
"value": "number of bumps wide",
"style": "line"
}
}
],
"8": [
{
"commentStart": 504,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "inlineComment",
"value": "works out to 6.5",
"style": "line"
}
}
]
},
"startNodes": [
{
"commentStart": 271,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
]
},
"start": 0
}
}