summaryrefslogtreecommitdiff
path: root/src/puzzles/puzzle.h
diff options
context:
space:
mode:
authorPhysick <96335032+DegustatorPonos@users.noreply.github.com>2026-07-07 19:05:45 +0500
committerPhysick <96335032+DegustatorPonos@users.noreply.github.com>2026-07-07 19:05:45 +0500
commit1a095735b1d8e7ade61ac4f936032e0c9dcc044f (patch)
treed4b61b54b170cf47e88381095baedb03eb26433d /src/puzzles/puzzle.h
parentde52d82dc62db5d6883cf870a2c3cdc08a178b4f (diff)
Resources loading
Diffstat (limited to 'src/puzzles/puzzle.h')
-rw-r--r--src/puzzles/puzzle.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/puzzles/puzzle.h b/src/puzzles/puzzle.h
new file mode 100644
index 0000000..8f7ef0d
--- /dev/null
+++ b/src/puzzles/puzzle.h
@@ -0,0 +1,31 @@
+#include <stddef.h>
+
+#ifndef PUZZLE_H
+
+typedef struct {
+ // TODO: figure it out
+ char *LuaSnippet;
+ char *ExpectedOutput;
+} Test;
+
+typedef struct {
+ char *Name;
+ char *Description;
+
+ /// The tests that are accessible for an end user
+ size_t PublicTestC;
+ Test *PublicTests;
+
+ size_t PrivateTestC;
+ Test *PrivateTests;
+} Puzzle;
+
+// TODO
+void ReadPuzzleFromFile(const char *path);
+
+void FreePuzzle(Puzzle *self);
+/// A prebuilt puzzle. Used for debuging
+Puzzle *GetTestPuzzle();
+
+#define PUZZLE_H
+#endif // PUZZLE_H