aboutsummaryrefslogtreecommitdiffstats
path: root/src/StaticStack.h
diff options
context:
space:
mode:
authorFinlay Davidson <finlay.davidson@coderclass.nl>2023-03-16 21:49:44 +0100
committerRiku Isokoski <riksu9000@gmail.com>2023-03-27 22:12:32 +0000
commit47931f41d579371c9c78ae7061317bf28848db2f (patch)
treea7f2668f902c4c71cac56035b5f6fbf67919cb7b /src/StaticStack.h
parent2ba8b179679aa92be46ac7688542b68f2695e04d (diff)
staticstack: Move to src/utility
Diffstat (limited to 'src/StaticStack.h')
-rw-r--r--src/StaticStack.h43
1 files changed, 0 insertions, 43 deletions
diff --git a/src/StaticStack.h b/src/StaticStack.h
deleted file mode 100644
index 598febce..00000000
--- a/src/StaticStack.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#include <array>
-#include <cstddef>
-
-template <typename T, size_t N>
-class StaticStack {
-public:
- T Pop();
- void Push(T element);
- void Reset();
- T Top();
-
-private:
- std::array<T, N> elementArray;
- // Number of elements in stack, points to the next empty slot
- size_t stackPointer = 0;
-};
-
-// Returns random data when popping from empty array.
-template <typename T, size_t N>
-T StaticStack<T, N>::Pop() {
- if (stackPointer > 0) {
- stackPointer--;
- }
- return elementArray[stackPointer];
-}
-
-template <typename T, size_t N>
-void StaticStack<T, N>::Push(T element) {
- if (stackPointer < elementArray.size()) {
- elementArray[stackPointer] = element;
- stackPointer++;
- }
-}
-
-template <typename T, size_t N>
-void StaticStack<T, N>::Reset() {
- stackPointer = 0;
-}
-
-template <typename T, size_t N>
-T StaticStack<T, N>::Top() {
- return elementArray[stackPointer - 1];
-}