summaryrefslogtreecommitdiff
path: root/libtnsl/src/box
diff options
context:
space:
mode:
authorKyle Gunger <kgunger12@gmail.com>2021-08-07 08:04:33 -0400
committerKyle Gunger <kgunger12@gmail.com>2021-08-07 08:04:33 -0400
commitbc448b70cb83cce046e65fb4f69a28a84a53ff49 (patch)
treef0f3b2bf7f971b5515f869dfae05e33628b47388 /libtnsl/src/box
parent6f77f307e7d9594341e9972f864e41daede0fab5 (diff)
Begin filling out spec
+ Add initial spec markdowns + Update copyright for libtnsl
Diffstat (limited to 'libtnsl/src/box')
-rw-r--r--libtnsl/src/box/box.tnsl34
-rw-r--r--libtnsl/src/box/iterator.tnsl40
-rw-r--r--libtnsl/src/box/map.tnsl20
-rw-r--r--libtnsl/src/box/string.tnsl20
-rw-r--r--libtnsl/src/box/tree.tnsl20
-rw-r--r--libtnsl/src/box/vector.tnsl20
6 files changed, 154 insertions, 0 deletions
diff --git a/libtnsl/src/box/box.tnsl b/libtnsl/src/box/box.tnsl
index e69de29..8530a99 100644
--- a/libtnsl/src/box/box.tnsl
+++ b/libtnsl/src/box/box.tnsl
@@ -0,0 +1,34 @@
+/##
+ Copyright 2021 Kyle Gunger
+
+ Dual licenced under the CDDL 1.0 and BSD 3-Clause licences.
+
+ This file may only be used in accordance with one of the two
+ licences. You should have recieved a copy of each licence with
+ the source code. In the event that you did not recieve a copy
+ of the licences, they may be found at the following URLs:
+
+ CDDL 1.0:
+ https://opensource.org/licenses/CDDL-1.0
+
+ BSD 3-Clause:
+ https://opensource.org/licenses/BSD-3-Clause
+
+ THIS SOFTWARE/SOURCE CODE IS PROVIDED "AS IS" WITH NO
+ WARRENTY, GUARANTEE, OR CLAIM OF FITNESS FOR ANY PURPOSE
+ EXPRESS OR IMPLIED
+#/
+
+/##
+ module tnsl.box
+ Containers and data management classes
+
+#; export module box
+ /: import
+ "iterator.tnsl"
+ "map.tnsl"
+ "string.tnsl"
+ "tree.tnsl"
+ "vector.tnsl"
+ :/
+;/ \ No newline at end of file
diff --git a/libtnsl/src/box/iterator.tnsl b/libtnsl/src/box/iterator.tnsl
new file mode 100644
index 0000000..9fb3d6d
--- /dev/null
+++ b/libtnsl/src/box/iterator.tnsl
@@ -0,0 +1,40 @@
+/##
+ Copyright 2021 Kyle Gunger
+
+ Dual licenced under the CDDL 1.0 and BSD 3-Clause licences.
+
+ This file may only be used in accordance with one of the two
+ licences. You should have recieved a copy of each licence with
+ the source code. In the event that you did not recieve a copy
+ of the licences, they may be found at the following URLs:
+
+ CDDL 1.0:
+ https://opensource.org/licenses/CDDL-1.0
+
+ BSD 3-Clause:
+ https://opensource.org/licenses/BSD-3-Clause
+
+ THIS SOFTWARE/SOURCE CODE IS PROVIDED "AS IS" WITH NO
+ WARRENTY, GUARANTEE, OR CLAIM OF FITNESS FOR ANY PURPOSE
+ EXPRESS OR IMPLIED
+#/
+
+# Interface for moving through a list
+/; interface ForwardsIterator (type T)
+
+ # Advance to the next element in the list
+ /; next [bool]
+ ;/
+
+ # Get the current element in the list
+ /; current [T]
+ ;/
+;/
+
+# Interface for moving through a list forwards or backwards
+/; interface TwoWayIterator (type T) extends ForwardsIterator(T)
+
+ # Move to the previous element in the list
+ /; prev [bool]
+ ;/
+;/ \ No newline at end of file
diff --git a/libtnsl/src/box/map.tnsl b/libtnsl/src/box/map.tnsl
index e69de29..2033d27 100644
--- a/libtnsl/src/box/map.tnsl
+++ b/libtnsl/src/box/map.tnsl
@@ -0,0 +1,20 @@
+/##
+ Copyright 2021 Kyle Gunger
+
+ Dual licenced under the CDDL 1.0 and BSD 3-Clause licences.
+
+ This file may only be used in accordance with one of the two
+ licences. You should have recieved a copy of each licence with
+ the source code. In the event that you did not recieve a copy
+ of the licences, they may be found at the following URLs:
+
+ CDDL 1.0:
+ https://opensource.org/licenses/CDDL-1.0
+
+ BSD 3-Clause:
+ https://opensource.org/licenses/BSD-3-Clause
+
+ THIS SOFTWARE/SOURCE CODE IS PROVIDED "AS IS" WITH NO
+ WARRENTY, GUARANTEE, OR CLAIM OF FITNESS FOR ANY PURPOSE
+ EXPRESS OR IMPLIED
+#/ \ No newline at end of file
diff --git a/libtnsl/src/box/string.tnsl b/libtnsl/src/box/string.tnsl
index e69de29..2033d27 100644
--- a/libtnsl/src/box/string.tnsl
+++ b/libtnsl/src/box/string.tnsl
@@ -0,0 +1,20 @@
+/##
+ Copyright 2021 Kyle Gunger
+
+ Dual licenced under the CDDL 1.0 and BSD 3-Clause licences.
+
+ This file may only be used in accordance with one of the two
+ licences. You should have recieved a copy of each licence with
+ the source code. In the event that you did not recieve a copy
+ of the licences, they may be found at the following URLs:
+
+ CDDL 1.0:
+ https://opensource.org/licenses/CDDL-1.0
+
+ BSD 3-Clause:
+ https://opensource.org/licenses/BSD-3-Clause
+
+ THIS SOFTWARE/SOURCE CODE IS PROVIDED "AS IS" WITH NO
+ WARRENTY, GUARANTEE, OR CLAIM OF FITNESS FOR ANY PURPOSE
+ EXPRESS OR IMPLIED
+#/ \ No newline at end of file
diff --git a/libtnsl/src/box/tree.tnsl b/libtnsl/src/box/tree.tnsl
index e69de29..2033d27 100644
--- a/libtnsl/src/box/tree.tnsl
+++ b/libtnsl/src/box/tree.tnsl
@@ -0,0 +1,20 @@
+/##
+ Copyright 2021 Kyle Gunger
+
+ Dual licenced under the CDDL 1.0 and BSD 3-Clause licences.
+
+ This file may only be used in accordance with one of the two
+ licences. You should have recieved a copy of each licence with
+ the source code. In the event that you did not recieve a copy
+ of the licences, they may be found at the following URLs:
+
+ CDDL 1.0:
+ https://opensource.org/licenses/CDDL-1.0
+
+ BSD 3-Clause:
+ https://opensource.org/licenses/BSD-3-Clause
+
+ THIS SOFTWARE/SOURCE CODE IS PROVIDED "AS IS" WITH NO
+ WARRENTY, GUARANTEE, OR CLAIM OF FITNESS FOR ANY PURPOSE
+ EXPRESS OR IMPLIED
+#/ \ No newline at end of file
diff --git a/libtnsl/src/box/vector.tnsl b/libtnsl/src/box/vector.tnsl
index e69de29..2033d27 100644
--- a/libtnsl/src/box/vector.tnsl
+++ b/libtnsl/src/box/vector.tnsl
@@ -0,0 +1,20 @@
+/##
+ Copyright 2021 Kyle Gunger
+
+ Dual licenced under the CDDL 1.0 and BSD 3-Clause licences.
+
+ This file may only be used in accordance with one of the two
+ licences. You should have recieved a copy of each licence with
+ the source code. In the event that you did not recieve a copy
+ of the licences, they may be found at the following URLs:
+
+ CDDL 1.0:
+ https://opensource.org/licenses/CDDL-1.0
+
+ BSD 3-Clause:
+ https://opensource.org/licenses/BSD-3-Clause
+
+ THIS SOFTWARE/SOURCE CODE IS PROVIDED "AS IS" WITH NO
+ WARRENTY, GUARANTEE, OR CLAIM OF FITNESS FOR ANY PURPOSE
+ EXPRESS OR IMPLIED
+#/ \ No newline at end of file