circuitscript 0.0.25 → 0.0.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/LICENSE +1 -1
  2. package/dist/cjs/BaseVisitor.js +16 -12
  3. package/dist/cjs/SemanticTokenVisitor.js +3 -3
  4. package/dist/cjs/antlr/CircuitScriptLexer.js +189 -166
  5. package/dist/cjs/antlr/CircuitScriptParser.js +1295 -719
  6. package/dist/cjs/draw_symbols.js +42 -14
  7. package/dist/cjs/execute.js +91 -30
  8. package/dist/cjs/export.js +91 -5
  9. package/dist/cjs/geometry.js +45 -26
  10. package/dist/cjs/globals.js +1 -2
  11. package/dist/cjs/helpers.js +6 -2
  12. package/dist/cjs/layout.js +37 -17
  13. package/dist/cjs/main.js +21 -9
  14. package/dist/cjs/objects/ClassComponent.js +8 -0
  15. package/dist/cjs/objects/types.js +8 -1
  16. package/dist/cjs/render.js +1 -1
  17. package/dist/cjs/visitor.js +131 -23
  18. package/dist/esm/BaseVisitor.mjs +17 -13
  19. package/dist/esm/SemanticTokenVisitor.mjs +3 -3
  20. package/dist/esm/antlr/CircuitScriptLexer.mjs +189 -166
  21. package/dist/esm/antlr/CircuitScriptParser.mjs +1287 -716
  22. package/dist/esm/antlr/CircuitScriptVisitor.mjs +6 -1
  23. package/dist/esm/draw_symbols.mjs +44 -16
  24. package/dist/esm/execute.mjs +90 -26
  25. package/dist/esm/export.mjs +89 -6
  26. package/dist/esm/geometry.mjs +44 -25
  27. package/dist/esm/globals.mjs +1 -2
  28. package/dist/esm/helpers.mjs +7 -3
  29. package/dist/esm/layout.mjs +35 -16
  30. package/dist/esm/main.mjs +21 -9
  31. package/dist/esm/objects/ClassComponent.mjs +8 -0
  32. package/dist/esm/objects/types.mjs +7 -0
  33. package/dist/esm/render.mjs +2 -2
  34. package/dist/esm/visitor.mjs +133 -25
  35. package/dist/types/BaseVisitor.d.ts +2 -5
  36. package/dist/types/SemanticTokenVisitor.d.ts +2 -2
  37. package/dist/types/antlr/CircuitScriptLexer.d.ts +29 -22
  38. package/dist/types/antlr/CircuitScriptParser.d.ts +121 -44
  39. package/dist/types/antlr/CircuitScriptVisitor.d.ts +12 -2
  40. package/dist/types/draw_symbols.d.ts +11 -6
  41. package/dist/types/execute.d.ts +6 -4
  42. package/dist/types/export.d.ts +27 -1
  43. package/dist/types/geometry.d.ts +12 -9
  44. package/dist/types/globals.d.ts +2 -3
  45. package/dist/types/layout.d.ts +5 -0
  46. package/dist/types/objects/ClassComponent.d.ts +5 -0
  47. package/dist/types/objects/Wire.d.ts +2 -1
  48. package/dist/types/objects/types.d.ts +6 -0
  49. package/dist/types/visitor.d.ts +7 -3
  50. package/libs/lib.cst +28 -10
  51. package/package.json +1 -1
package/libs/lib.cst CHANGED
@@ -1,38 +1,43 @@
1
+ # Circuitscript default lib
2
+
1
3
  def net(net_name):
2
4
  return create component:
3
5
  pins: 1
6
+ copy: true
7
+ angle: -90
4
8
  display: create graphic:
5
9
  hline: -15, 0, 30
6
10
  vpin: 1, 0, 10, -10, display_pin_id=0
7
11
  label: "net_name", 0, -5, net_name, fontSize=10, anchor="middle"
8
12
  type: "net"
9
13
  params:
10
- __is_net: 1
11
14
  net_name: net_name
12
15
  priority: 10
13
16
 
14
17
  def supply(net_name):
15
18
  return create component:
16
19
  pins: 1
20
+ copy: true
21
+ angle: -90
17
22
  display: create graphic:
18
23
  hline: -15, 0, 30
19
24
  vpin: 1, 0, 10, -10, display_pin_id=0
20
25
  label: "net_name", 0, -5, net_name, fontSize=10, anchor="middle"
21
26
  type: "net"
22
27
  params:
23
- __is_net: 1
24
28
  net_name: net_name
25
29
  priority: 20
26
30
 
27
- def label(value):
31
+ def label(value, anchor="left"):
28
32
  return create component:
29
33
  pins: 1
34
+ copy: true
35
+ followWireOrientation: false
30
36
  display: create graphic:
31
- label: "value", 0, -2, "?", fontSize=10, anchor="left"
37
+ label: "value", 0, -2, "?", fontSize=10, anchor=anchor
32
38
  pin: 1, 0, 0, 0, 0, display_pin_id=0
33
39
  type: "label"
34
40
  params:
35
- __is_net: 1
36
41
  net_name: value
37
42
  value: value
38
43
  priority: 5
@@ -61,6 +66,7 @@ def cap(value):
61
66
 
62
67
  return create component:
63
68
  pins: 2
69
+ angle: 90
64
70
  display: create graphic:
65
71
  hline: -width/2, -3, width
66
72
  hline: -width/2, 3, width
@@ -136,6 +142,8 @@ def cgnd():
136
142
  net_name = "gnd"
137
143
  return create component:
138
144
  pins: 1
145
+ copy: true
146
+ angle: 90
139
147
  display: create graphic:
140
148
  hline: -15, 0, 30
141
149
  hline: -10, 5, 20
@@ -144,24 +152,23 @@ def cgnd():
144
152
  label: "net_name", 0, 22, net_name, fontSize=10, anchor="middle"
145
153
  type: "net"
146
154
  params:
147
- __is_net: 1
148
155
  net_name: net_name
149
156
  priority: 100
150
157
 
151
- def dgnd():
158
+ def dgnd(net_name="GND"):
152
159
  height = 10
153
160
  width = 20
154
161
 
155
- net_name = "GND"
156
162
  return create component:
157
163
  pins: 1
164
+ copy: true
165
+ angle: 90
158
166
  display: create graphic:
159
167
  triangle: 0, 0, 0, height, width
160
168
  vpin: 1, 0, -10, 10, display_pin_id=0
161
169
  label: "net_name", 0, height + 10, net_name, fontSize=10, anchor="middle"
162
170
  type: "net"
163
171
  params:
164
- __is_net: 1
165
172
  net_name: net_name
166
173
  priority: 100
167
174
 
@@ -180,4 +187,15 @@ def arrow_point():
180
187
  display: create graphic:
181
188
  path: ("M", 15, -5, "L", 20, 0, "L", 15, 5)
182
189
  hpin: 1, 0, 0, 20
183
- type: "net"
190
+ type: "net"
191
+
192
+ def text(value, offsetX = 0, offsetY = 0, fontSize = 12):
193
+ return create component:
194
+ pins: 1
195
+ followWireOrientation: false
196
+ display: create graphic:
197
+ pin: 1, 0, 0, 0, 0, display_pin_id=0
198
+ text:
199
+ content: value
200
+ offset: offsetX, offsetY
201
+ fontSize: fontSize
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "circuitscript",
3
- "version": "0.0.25",
3
+ "version": "0.0.27",
4
4
  "description": "Interpreter for the circuitscript language",
5
5
  "homepage": "https://circuitscript.net",
6
6
  "engines": {