From bc448b70cb83cce046e65fb4f69a28a84a53ff49 Mon Sep 17 00:00:00 2001 From: Kyle Gunger Date: Sat, 7 Aug 2021 08:04:33 -0400 Subject: Begin filling out spec + Add initial spec markdowns + Update copyright for libtnsl --- libtnsl/src/box/box.tnsl | 34 ++++++++++++++++++++++++++++++++++ libtnsl/src/box/iterator.tnsl | 40 ++++++++++++++++++++++++++++++++++++++++ libtnsl/src/box/map.tnsl | 20 ++++++++++++++++++++ libtnsl/src/box/string.tnsl | 20 ++++++++++++++++++++ libtnsl/src/box/tree.tnsl | 20 ++++++++++++++++++++ libtnsl/src/box/vector.tnsl | 20 ++++++++++++++++++++ 6 files changed, 154 insertions(+) create mode 100644 libtnsl/src/box/iterator.tnsl (limited to 'libtnsl/src/box') 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 -- cgit v1.2.3