aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2025-01-12 15:11:04 +0000
committerMichael Williamson <mike@zwobble.org>2025-01-12 15:11:04 +0000
commit027d73dea19c4154d27c77cd82dd4b28649cdf3f (patch)
treec5ef4e7e2d7bc096389c55507bae87793906a862 /examples
parent57de5c166aeab88d0da164171520e962519bc999 (diff)
Support recursive project dependencies
Diffstat (limited to 'examples')
-rw-r--r--examples/20-import-recursive-dependency/hello-world/.gitignore1
-rw-r--r--examples/20-import-recursive-dependency/hello-world/shed.json513
-rw-r--r--examples/20-import-recursive-dependency/hello-world/src/HelloWorld.shed5
-rw-r--r--examples/20-import-recursive-dependency/message1/shed.json57
-rw-r--r--examples/20-import-recursive-dependency/message1/src/Message1.shed3
-rw-r--r--examples/20-import-recursive-dependency/message2/shed.json52
-rw-r--r--examples/20-import-recursive-dependency/message2/src/Message2.shed1
-rw-r--r--examples/20-import-recursive-dependency/shed-examples.json59
-rw-r--r--examples/21-function-expression/shed-examples.json5 (renamed from examples/20-function-expression/shed-examples.json5)0
-rw-r--r--examples/21-function-expression/shed.json5 (renamed from examples/20-function-expression/shed.json5)0
-rw-r--r--examples/21-function-expression/src/HelloWorld.shed (renamed from examples/20-function-expression/src/HelloWorld.shed)0
-rw-r--r--examples/22-function-expression-infer-return-type/shed-examples.json5 (renamed from examples/21-function-expression-infer-return-type/shed-examples.json5)0
-rw-r--r--examples/22-function-expression-infer-return-type/shed.json5 (renamed from examples/21-function-expression-infer-return-type/shed.json5)0
-rw-r--r--examples/22-function-expression-infer-return-type/src/HelloWorld.shed (renamed from examples/21-function-expression-infer-return-type/src/HelloWorld.shed)0
-rw-r--r--examples/23-function-expression-infer-param-type/shed-examples.json5 (renamed from examples/22-function-expression-infer-param-type/shed-examples.json5)0
-rw-r--r--examples/23-function-expression-infer-param-type/shed.json5 (renamed from examples/22-function-expression-infer-param-type/shed.json5)0
-rw-r--r--examples/23-function-expression-infer-param-type/src/HelloWorld.shed (renamed from examples/22-function-expression-infer-param-type/src/HelloWorld.shed)0
-rw-r--r--examples/24-effect-resume/shed-examples.json5 (renamed from examples/23-effect-resume/shed-examples.json5)0
-rw-r--r--examples/24-effect-resume/shed.json5 (renamed from examples/23-effect-resume/shed.json5)0
-rw-r--r--examples/24-effect-resume/src/HelloWorld.shed (renamed from examples/23-effect-resume/src/HelloWorld.shed)0
-rw-r--r--examples/25-effect-resume-with-value/shed-examples.json5 (renamed from examples/24-effect-resume-with-value/shed-examples.json5)0
-rw-r--r--examples/25-effect-resume-with-value/shed.json5 (renamed from examples/24-effect-resume-with-value/shed.json5)0
-rw-r--r--examples/25-effect-resume-with-value/src/HelloWorld.shed (renamed from examples/24-effect-resume-with-value/src/HelloWorld.shed)0
-rw-r--r--examples/26-effect-with-state/shed-examples.json5 (renamed from examples/25-effect-with-state/shed-examples.json5)0
-rw-r--r--examples/26-effect-with-state/shed.json5 (renamed from examples/25-effect-with-state/shed.json5)0
-rw-r--r--examples/26-effect-with-state/src/HelloWorld.shed (renamed from examples/25-effect-with-state/src/HelloWorld.shed)0
-rw-r--r--examples/27-effect-handler-pop/shed-examples.json5 (renamed from examples/26-effect-handler-pop/shed-examples.json5)0
-rw-r--r--examples/27-effect-handler-pop/shed.json5 (renamed from examples/26-effect-handler-pop/shed.json5)0
-rw-r--r--examples/27-effect-handler-pop/src/HelloWorld.shed (renamed from examples/26-effect-handler-pop/src/HelloWorld.shed)0
-rw-r--r--examples/28-effect-handler-pop-on-return/shed-examples.json5 (renamed from examples/27-effect-handler-pop-on-return/shed-examples.json5)0
-rw-r--r--examples/28-effect-handler-pop-on-return/shed.json5 (renamed from examples/27-effect-handler-pop-on-return/shed.json5)0
-rw-r--r--examples/28-effect-handler-pop-on-return/src/HelloWorld.shed (renamed from examples/27-effect-handler-pop-on-return/src/HelloWorld.shed)0
-rw-r--r--examples/29-effect-handler-nested/shed-examples.json5 (renamed from examples/28-effect-handler-nested/shed-examples.json5)0
-rw-r--r--examples/29-effect-handler-nested/shed.json5 (renamed from examples/28-effect-handler-nested/shed.json5)0
-rw-r--r--examples/29-effect-handler-nested/src/Example.shed (renamed from examples/28-effect-handler-nested/src/Example.shed)0
-rw-r--r--examples/30-effect-in-handler/shed-examples.json5 (renamed from examples/29-effect-in-handler/shed-examples.json5)0
-rw-r--r--examples/30-effect-in-handler/shed.json5 (renamed from examples/29-effect-in-handler/shed.json5)0
-rw-r--r--examples/30-effect-in-handler/src/Example.shed (renamed from examples/29-effect-in-handler/src/Example.shed)0
-rw-r--r--examples/31-effect-break/shed-examples.json5 (renamed from examples/30-effect-break/shed-examples.json5)0
-rw-r--r--examples/31-effect-break/shed.json5 (renamed from examples/30-effect-break/shed.json5)0
-rw-r--r--examples/31-effect-break/src/HelloWorld.shed (renamed from examples/30-effect-break/src/HelloWorld.shed)0
-rw-r--r--examples/32-generic-structs/shed-examples.json5 (renamed from examples/31-generic-structs/shed-examples.json5)0
-rw-r--r--examples/32-generic-structs/shed.json5 (renamed from examples/31-generic-structs/shed.json5)0
-rw-r--r--examples/32-generic-structs/src/HelloWorld.shed (renamed from examples/31-generic-structs/src/HelloWorld.shed)0
-rw-r--r--examples/33-generic-sums/shed-examples.json5 (renamed from examples/32-generic-sums/shed-examples.json5)0
-rw-r--r--examples/33-generic-sums/shed.json5 (renamed from examples/32-generic-sums/shed.json5)0
-rw-r--r--examples/33-generic-sums/src/HelloWorld.shed (renamed from examples/32-generic-sums/src/HelloWorld.shed)0
-rw-r--r--examples/34-generic-structs-and-sums-inferred-type-args/shed-examples.json5 (renamed from examples/33-generic-structs-and-sums-inferred-type-args/shed-examples.json5)0
-rw-r--r--examples/34-generic-structs-and-sums-inferred-type-args/shed.json5 (renamed from examples/33-generic-structs-and-sums-inferred-type-args/shed.json5)0
-rw-r--r--examples/34-generic-structs-and-sums-inferred-type-args/src/HelloWorld.shed (renamed from examples/33-generic-structs-and-sums-inferred-type-args/src/HelloWorld.shed)0
-rw-r--r--examples/35-generic-functions/shed-examples.json5 (renamed from examples/34-generic-functions/shed-examples.json5)0
-rw-r--r--examples/35-generic-functions/shed.json5 (renamed from examples/34-generic-functions/shed.json5)0
-rw-r--r--examples/35-generic-functions/src/HelloWorld.shed (renamed from examples/34-generic-functions/src/HelloWorld.shed)0
-rw-r--r--examples/36-generic-effects/shed-examples.json5 (renamed from examples/35-generic-effects/shed-examples.json5)0
-rw-r--r--examples/36-generic-effects/shed.json5 (renamed from examples/35-generic-effects/shed.json5)0
-rw-r--r--examples/36-generic-effects/src/HelloWorld.shed (renamed from examples/35-generic-effects/src/HelloWorld.shed)0
-rw-r--r--examples/37-struct-methods/shed-examples.json5 (renamed from examples/36-struct-methods/shed-examples.json5)0
-rw-r--r--examples/37-struct-methods/shed.json5 (renamed from examples/36-struct-methods/shed.json5)0
-rw-r--r--examples/37-struct-methods/src/HelloWorld.shed (renamed from examples/36-struct-methods/src/HelloWorld.shed)0
-rw-r--r--examples/38-struct-method-references/shed-examples.json5 (renamed from examples/37-struct-method-references/shed-examples.json5)0
-rw-r--r--examples/38-struct-method-references/shed.json5 (renamed from examples/37-struct-method-references/shed.json5)0
-rw-r--r--examples/38-struct-method-references/src/HelloWorld.shed (renamed from examples/37-struct-method-references/src/HelloWorld.shed)0
-rw-r--r--examples/39-generic-struct-methods/shed-examples.json5 (renamed from examples/38-generic-struct-methods/shed-examples.json5)0
-rw-r--r--examples/39-generic-struct-methods/shed.json5 (renamed from examples/38-generic-struct-methods/shed.json5)0
-rw-r--r--examples/39-generic-struct-methods/src/HelloWorld.shed (renamed from examples/38-generic-struct-methods/src/HelloWorld.shed)0
65 files changed, 41 insertions, 0 deletions
diff --git a/examples/20-import-recursive-dependency/hello-world/.gitignore b/examples/20-import-recursive-dependency/hello-world/.gitignore
new file mode 100644
index 00000000..ea8c4bf7
--- /dev/null
+++ b/examples/20-import-recursive-dependency/hello-world/.gitignore
@@ -0,0 +1 @@
+/target
diff --git a/examples/20-import-recursive-dependency/hello-world/shed.json5 b/examples/20-import-recursive-dependency/hello-world/shed.json5
new file mode 100644
index 00000000..fad540d8
--- /dev/null
+++ b/examples/20-import-recursive-dependency/hello-world/shed.json5
@@ -0,0 +1,13 @@
+{
+ bins: [
+ {
+ name: "hello-world",
+ mainNamespace: "HelloWorld",
+ },
+ ],
+ dependencies: [
+ {
+ path: "../message1"
+ }
+ ],
+}
diff --git a/examples/20-import-recursive-dependency/hello-world/src/HelloWorld.shed b/examples/20-import-recursive-dependency/hello-world/src/HelloWorld.shed
new file mode 100644
index 00000000..f63849d4
--- /dev/null
+++ b/examples/20-import-recursive-dependency/hello-world/src/HelloWorld.shed
@@ -0,0 +1,5 @@
+import Message1;
+
+pub fun main() ! Io -> Unit {
+ print!(Message1.message);
+}
diff --git a/examples/20-import-recursive-dependency/message1/shed.json5 b/examples/20-import-recursive-dependency/message1/shed.json5
new file mode 100644
index 00000000..1faaf200
--- /dev/null
+++ b/examples/20-import-recursive-dependency/message1/shed.json5
@@ -0,0 +1,7 @@
+{
+ dependencies: [
+ {
+ path: "../message2"
+ }
+ ]
+}
diff --git a/examples/20-import-recursive-dependency/message1/src/Message1.shed b/examples/20-import-recursive-dependency/message1/src/Message1.shed
new file mode 100644
index 00000000..aa497683
--- /dev/null
+++ b/examples/20-import-recursive-dependency/message1/src/Message1.shed
@@ -0,0 +1,3 @@
+import Message2;
+
+pub val message = Message2.message;
diff --git a/examples/20-import-recursive-dependency/message2/shed.json5 b/examples/20-import-recursive-dependency/message2/shed.json5
new file mode 100644
index 00000000..2c63c085
--- /dev/null
+++ b/examples/20-import-recursive-dependency/message2/shed.json5
@@ -0,0 +1,2 @@
+{
+}
diff --git a/examples/20-import-recursive-dependency/message2/src/Message2.shed b/examples/20-import-recursive-dependency/message2/src/Message2.shed
new file mode 100644
index 00000000..db03110a
--- /dev/null
+++ b/examples/20-import-recursive-dependency/message2/src/Message2.shed
@@ -0,0 +1 @@
+pub val message = "hello, world\n";
diff --git a/examples/20-import-recursive-dependency/shed-examples.json5 b/examples/20-import-recursive-dependency/shed-examples.json5
new file mode 100644
index 00000000..64a897eb
--- /dev/null
+++ b/examples/20-import-recursive-dependency/shed-examples.json5
@@ -0,0 +1,9 @@
+{
+ examples: [
+ {
+ project: "./hello-world",
+ bin: "hello-world",
+ expectedOutput: "hello, world",
+ },
+ ],
+}
diff --git a/examples/20-function-expression/shed-examples.json5 b/examples/21-function-expression/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/20-function-expression/shed-examples.json5
+++ b/examples/21-function-expression/shed-examples.json5
diff --git a/examples/20-function-expression/shed.json5 b/examples/21-function-expression/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/20-function-expression/shed.json5
+++ b/examples/21-function-expression/shed.json5
diff --git a/examples/20-function-expression/src/HelloWorld.shed b/examples/21-function-expression/src/HelloWorld.shed
index 1ebb2863..1ebb2863 100644
--- a/examples/20-function-expression/src/HelloWorld.shed
+++ b/examples/21-function-expression/src/HelloWorld.shed
diff --git a/examples/21-function-expression-infer-return-type/shed-examples.json5 b/examples/22-function-expression-infer-return-type/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/21-function-expression-infer-return-type/shed-examples.json5
+++ b/examples/22-function-expression-infer-return-type/shed-examples.json5
diff --git a/examples/21-function-expression-infer-return-type/shed.json5 b/examples/22-function-expression-infer-return-type/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/21-function-expression-infer-return-type/shed.json5
+++ b/examples/22-function-expression-infer-return-type/shed.json5
diff --git a/examples/21-function-expression-infer-return-type/src/HelloWorld.shed b/examples/22-function-expression-infer-return-type/src/HelloWorld.shed
index 1c93c946..1c93c946 100644
--- a/examples/21-function-expression-infer-return-type/src/HelloWorld.shed
+++ b/examples/22-function-expression-infer-return-type/src/HelloWorld.shed
diff --git a/examples/22-function-expression-infer-param-type/shed-examples.json5 b/examples/23-function-expression-infer-param-type/shed-examples.json5
index 81fa6d68..81fa6d68 100644
--- a/examples/22-function-expression-infer-param-type/shed-examples.json5
+++ b/examples/23-function-expression-infer-param-type/shed-examples.json5
diff --git a/examples/22-function-expression-infer-param-type/shed.json5 b/examples/23-function-expression-infer-param-type/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/22-function-expression-infer-param-type/shed.json5
+++ b/examples/23-function-expression-infer-param-type/shed.json5
diff --git a/examples/22-function-expression-infer-param-type/src/HelloWorld.shed b/examples/23-function-expression-infer-param-type/src/HelloWorld.shed
index e91bc5e0..e91bc5e0 100644
--- a/examples/22-function-expression-infer-param-type/src/HelloWorld.shed
+++ b/examples/23-function-expression-infer-param-type/src/HelloWorld.shed
diff --git a/examples/23-effect-resume/shed-examples.json5 b/examples/24-effect-resume/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/23-effect-resume/shed-examples.json5
+++ b/examples/24-effect-resume/shed-examples.json5
diff --git a/examples/23-effect-resume/shed.json5 b/examples/24-effect-resume/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/23-effect-resume/shed.json5
+++ b/examples/24-effect-resume/shed.json5
diff --git a/examples/23-effect-resume/src/HelloWorld.shed b/examples/24-effect-resume/src/HelloWorld.shed
index a5e96e2f..a5e96e2f 100644
--- a/examples/23-effect-resume/src/HelloWorld.shed
+++ b/examples/24-effect-resume/src/HelloWorld.shed
diff --git a/examples/24-effect-resume-with-value/shed-examples.json5 b/examples/25-effect-resume-with-value/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/24-effect-resume-with-value/shed-examples.json5
+++ b/examples/25-effect-resume-with-value/shed-examples.json5
diff --git a/examples/24-effect-resume-with-value/shed.json5 b/examples/25-effect-resume-with-value/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/24-effect-resume-with-value/shed.json5
+++ b/examples/25-effect-resume-with-value/shed.json5
diff --git a/examples/24-effect-resume-with-value/src/HelloWorld.shed b/examples/25-effect-resume-with-value/src/HelloWorld.shed
index 3252aaf3..3252aaf3 100644
--- a/examples/24-effect-resume-with-value/src/HelloWorld.shed
+++ b/examples/25-effect-resume-with-value/src/HelloWorld.shed
diff --git a/examples/25-effect-with-state/shed-examples.json5 b/examples/26-effect-with-state/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/25-effect-with-state/shed-examples.json5
+++ b/examples/26-effect-with-state/shed-examples.json5
diff --git a/examples/25-effect-with-state/shed.json5 b/examples/26-effect-with-state/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/25-effect-with-state/shed.json5
+++ b/examples/26-effect-with-state/shed.json5
diff --git a/examples/25-effect-with-state/src/HelloWorld.shed b/examples/26-effect-with-state/src/HelloWorld.shed
index 50d64428..50d64428 100644
--- a/examples/25-effect-with-state/src/HelloWorld.shed
+++ b/examples/26-effect-with-state/src/HelloWorld.shed
diff --git a/examples/26-effect-handler-pop/shed-examples.json5 b/examples/27-effect-handler-pop/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/26-effect-handler-pop/shed-examples.json5
+++ b/examples/27-effect-handler-pop/shed-examples.json5
diff --git a/examples/26-effect-handler-pop/shed.json5 b/examples/27-effect-handler-pop/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/26-effect-handler-pop/shed.json5
+++ b/examples/27-effect-handler-pop/shed.json5
diff --git a/examples/26-effect-handler-pop/src/HelloWorld.shed b/examples/27-effect-handler-pop/src/HelloWorld.shed
index 2b9491d7..2b9491d7 100644
--- a/examples/26-effect-handler-pop/src/HelloWorld.shed
+++ b/examples/27-effect-handler-pop/src/HelloWorld.shed
diff --git a/examples/27-effect-handler-pop-on-return/shed-examples.json5 b/examples/28-effect-handler-pop-on-return/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/27-effect-handler-pop-on-return/shed-examples.json5
+++ b/examples/28-effect-handler-pop-on-return/shed-examples.json5
diff --git a/examples/27-effect-handler-pop-on-return/shed.json5 b/examples/28-effect-handler-pop-on-return/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/27-effect-handler-pop-on-return/shed.json5
+++ b/examples/28-effect-handler-pop-on-return/shed.json5
diff --git a/examples/27-effect-handler-pop-on-return/src/HelloWorld.shed b/examples/28-effect-handler-pop-on-return/src/HelloWorld.shed
index 4e91f8b4..4e91f8b4 100644
--- a/examples/27-effect-handler-pop-on-return/src/HelloWorld.shed
+++ b/examples/28-effect-handler-pop-on-return/src/HelloWorld.shed
diff --git a/examples/28-effect-handler-nested/shed-examples.json5 b/examples/29-effect-handler-nested/shed-examples.json5
index 13ea0b50..13ea0b50 100644
--- a/examples/28-effect-handler-nested/shed-examples.json5
+++ b/examples/29-effect-handler-nested/shed-examples.json5
diff --git a/examples/28-effect-handler-nested/shed.json5 b/examples/29-effect-handler-nested/shed.json5
index e642a813..e642a813 100644
--- a/examples/28-effect-handler-nested/shed.json5
+++ b/examples/29-effect-handler-nested/shed.json5
diff --git a/examples/28-effect-handler-nested/src/Example.shed b/examples/29-effect-handler-nested/src/Example.shed
index 2a8e4781..2a8e4781 100644
--- a/examples/28-effect-handler-nested/src/Example.shed
+++ b/examples/29-effect-handler-nested/src/Example.shed
diff --git a/examples/29-effect-in-handler/shed-examples.json5 b/examples/30-effect-in-handler/shed-examples.json5
index 0717d99b..0717d99b 100644
--- a/examples/29-effect-in-handler/shed-examples.json5
+++ b/examples/30-effect-in-handler/shed-examples.json5
diff --git a/examples/29-effect-in-handler/shed.json5 b/examples/30-effect-in-handler/shed.json5
index e642a813..e642a813 100644
--- a/examples/29-effect-in-handler/shed.json5
+++ b/examples/30-effect-in-handler/shed.json5
diff --git a/examples/29-effect-in-handler/src/Example.shed b/examples/30-effect-in-handler/src/Example.shed
index 568d9ea8..568d9ea8 100644
--- a/examples/29-effect-in-handler/src/Example.shed
+++ b/examples/30-effect-in-handler/src/Example.shed
diff --git a/examples/30-effect-break/shed-examples.json5 b/examples/31-effect-break/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/30-effect-break/shed-examples.json5
+++ b/examples/31-effect-break/shed-examples.json5
diff --git a/examples/30-effect-break/shed.json5 b/examples/31-effect-break/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/30-effect-break/shed.json5
+++ b/examples/31-effect-break/shed.json5
diff --git a/examples/30-effect-break/src/HelloWorld.shed b/examples/31-effect-break/src/HelloWorld.shed
index f836ab58..f836ab58 100644
--- a/examples/30-effect-break/src/HelloWorld.shed
+++ b/examples/31-effect-break/src/HelloWorld.shed
diff --git a/examples/31-generic-structs/shed-examples.json5 b/examples/32-generic-structs/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/31-generic-structs/shed-examples.json5
+++ b/examples/32-generic-structs/shed-examples.json5
diff --git a/examples/31-generic-structs/shed.json5 b/examples/32-generic-structs/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/31-generic-structs/shed.json5
+++ b/examples/32-generic-structs/shed.json5
diff --git a/examples/31-generic-structs/src/HelloWorld.shed b/examples/32-generic-structs/src/HelloWorld.shed
index f5a2f013..f5a2f013 100644
--- a/examples/31-generic-structs/src/HelloWorld.shed
+++ b/examples/32-generic-structs/src/HelloWorld.shed
diff --git a/examples/32-generic-sums/shed-examples.json5 b/examples/33-generic-sums/shed-examples.json5
index 4a4b2b7c..4a4b2b7c 100644
--- a/examples/32-generic-sums/shed-examples.json5
+++ b/examples/33-generic-sums/shed-examples.json5
diff --git a/examples/32-generic-sums/shed.json5 b/examples/33-generic-sums/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/32-generic-sums/shed.json5
+++ b/examples/33-generic-sums/shed.json5
diff --git a/examples/32-generic-sums/src/HelloWorld.shed b/examples/33-generic-sums/src/HelloWorld.shed
index e10456bd..e10456bd 100644
--- a/examples/32-generic-sums/src/HelloWorld.shed
+++ b/examples/33-generic-sums/src/HelloWorld.shed
diff --git a/examples/33-generic-structs-and-sums-inferred-type-args/shed-examples.json5 b/examples/34-generic-structs-and-sums-inferred-type-args/shed-examples.json5
index 4a4b2b7c..4a4b2b7c 100644
--- a/examples/33-generic-structs-and-sums-inferred-type-args/shed-examples.json5
+++ b/examples/34-generic-structs-and-sums-inferred-type-args/shed-examples.json5
diff --git a/examples/33-generic-structs-and-sums-inferred-type-args/shed.json5 b/examples/34-generic-structs-and-sums-inferred-type-args/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/33-generic-structs-and-sums-inferred-type-args/shed.json5
+++ b/examples/34-generic-structs-and-sums-inferred-type-args/shed.json5
diff --git a/examples/33-generic-structs-and-sums-inferred-type-args/src/HelloWorld.shed b/examples/34-generic-structs-and-sums-inferred-type-args/src/HelloWorld.shed
index 79cd1eb8..79cd1eb8 100644
--- a/examples/33-generic-structs-and-sums-inferred-type-args/src/HelloWorld.shed
+++ b/examples/34-generic-structs-and-sums-inferred-type-args/src/HelloWorld.shed
diff --git a/examples/34-generic-functions/shed-examples.json5 b/examples/35-generic-functions/shed-examples.json5
index 52763f4c..52763f4c 100644
--- a/examples/34-generic-functions/shed-examples.json5
+++ b/examples/35-generic-functions/shed-examples.json5
diff --git a/examples/34-generic-functions/shed.json5 b/examples/35-generic-functions/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/34-generic-functions/shed.json5
+++ b/examples/35-generic-functions/shed.json5
diff --git a/examples/34-generic-functions/src/HelloWorld.shed b/examples/35-generic-functions/src/HelloWorld.shed
index d40e9103..d40e9103 100644
--- a/examples/34-generic-functions/src/HelloWorld.shed
+++ b/examples/35-generic-functions/src/HelloWorld.shed
diff --git a/examples/35-generic-effects/shed-examples.json5 b/examples/36-generic-effects/shed-examples.json5
index d104124f..d104124f 100644
--- a/examples/35-generic-effects/shed-examples.json5
+++ b/examples/36-generic-effects/shed-examples.json5
diff --git a/examples/35-generic-effects/shed.json5 b/examples/36-generic-effects/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/35-generic-effects/shed.json5
+++ b/examples/36-generic-effects/shed.json5
diff --git a/examples/35-generic-effects/src/HelloWorld.shed b/examples/36-generic-effects/src/HelloWorld.shed
index a54803c6..a54803c6 100644
--- a/examples/35-generic-effects/src/HelloWorld.shed
+++ b/examples/36-generic-effects/src/HelloWorld.shed
diff --git a/examples/36-struct-methods/shed-examples.json5 b/examples/37-struct-methods/shed-examples.json5
index 95fb0a97..95fb0a97 100644
--- a/examples/36-struct-methods/shed-examples.json5
+++ b/examples/37-struct-methods/shed-examples.json5
diff --git a/examples/36-struct-methods/shed.json5 b/examples/37-struct-methods/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/36-struct-methods/shed.json5
+++ b/examples/37-struct-methods/shed.json5
diff --git a/examples/36-struct-methods/src/HelloWorld.shed b/examples/37-struct-methods/src/HelloWorld.shed
index cfba064d..cfba064d 100644
--- a/examples/36-struct-methods/src/HelloWorld.shed
+++ b/examples/37-struct-methods/src/HelloWorld.shed
diff --git a/examples/37-struct-method-references/shed-examples.json5 b/examples/38-struct-method-references/shed-examples.json5
index a57c4749..a57c4749 100644
--- a/examples/37-struct-method-references/shed-examples.json5
+++ b/examples/38-struct-method-references/shed-examples.json5
diff --git a/examples/37-struct-method-references/shed.json5 b/examples/38-struct-method-references/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/37-struct-method-references/shed.json5
+++ b/examples/38-struct-method-references/shed.json5
diff --git a/examples/37-struct-method-references/src/HelloWorld.shed b/examples/38-struct-method-references/src/HelloWorld.shed
index 5bfd3631..5bfd3631 100644
--- a/examples/37-struct-method-references/src/HelloWorld.shed
+++ b/examples/38-struct-method-references/src/HelloWorld.shed
diff --git a/examples/38-generic-struct-methods/shed-examples.json5 b/examples/39-generic-struct-methods/shed-examples.json5
index 531c665f..531c665f 100644
--- a/examples/38-generic-struct-methods/shed-examples.json5
+++ b/examples/39-generic-struct-methods/shed-examples.json5
diff --git a/examples/38-generic-struct-methods/shed.json5 b/examples/39-generic-struct-methods/shed.json5
index a6c8e563..a6c8e563 100644
--- a/examples/38-generic-struct-methods/shed.json5
+++ b/examples/39-generic-struct-methods/shed.json5
diff --git a/examples/38-generic-struct-methods/src/HelloWorld.shed b/examples/39-generic-struct-methods/src/HelloWorld.shed
index a4e808e1..a4e808e1 100644
--- a/examples/38-generic-struct-methods/src/HelloWorld.shed
+++ b/examples/39-generic-struct-methods/src/HelloWorld.shed