diff --git a/corpus/declarations.sk b/corpus/declarations.sk
new file mode 100644
index 0000000..989860e
--- /dev/null
+++ b/corpus/declarations.sk
@@ -0,0 +1,12 @@
+let add2 a = a + 2
+
+let multi_add2 l = {
+ let items = items l
+ add_all items 2
+}
+
+let basic_value = 10
+
+let calculation = (1 * 1) + (2 * (2 + 3))
+
+let calculation_with_fn fn = 1 * fn (2 * 2)
diff --git a/corpus/types.sk b/corpus/types.sk
index ec7b900..e0552ff 100644
--- a/corpus/types.sk
+++ b/corpus/types.sk
@@ -22,3 +22,19 @@ type ShoppingList = #{
utils: Utils
packaging: Packaging
}
+
+type NestedHell = #[
+ NoNesting Num
+ Nesting #[
+ FirstLevel #[
+ SecondLevel #[
+ Third Lvl
+ ]
+ Second #{
+ first: Num
+ second: Num
+ }
+ ]
+ StillFirst Num
+ ]
+]
diff --git a/src/test/mod.rs b/src/test/mod.rs
index f6c6b58..b4dfdfa 100644
--- a/src/test/mod.rs
+++ b/src/test/mod.rs
@@ -13,3 +13,12 @@ fn it_parse_types() {
panic!("{e}")
}
}
+
+#[test]
+fn it_parse_declarations() {
+ let result = parse(include_str!("../../corpus/declarations.sk"));
+
+ if let Err(e) = result {
+ panic!("{e}")
+ }
+}