diff --git a/Makefile b/Makefile index f8140d6..faa71e8 100644 --- a/Makefile +++ b/Makefile @@ -5,3 +5,8 @@ test-uno: .PHONY: test-native test-native: pio test -e native + +.PHONY: test +test: + make test-native + make test-uno diff --git a/src/TinyADT/deque.h b/src/TinyADT/deque.h index c90c333..69e306d 100644 --- a/src/TinyADT/deque.h +++ b/src/TinyADT/deque.h @@ -81,25 +81,25 @@ class Deque { }; // Storage - virtual uint16_t size(); - virtual uint16_t capacity(); - virtual void clear(); - virtual T* data(); + virtual uint16_t size() = 0; + virtual uint16_t capacity() = 0; + virtual void clear() = 0; + virtual T* data() = 0; // Iterators - virtual iterator begin(); - virtual iterator end(); + virtual iterator begin() = 0; + virtual iterator end() = 0; // Accessors - virtual T& at(int index); - virtual T& at_end(int index); - virtual T& operator[](int index); + virtual T& at(int index) = 0; + virtual T& at_end(int index) = 0; + virtual T& operator[](int index) = 0; // Append - virtual bool push_front(const T &item); - virtual bool push_back(const T &item); - virtual T& emplace_back(); - virtual T& emplace_front(); + virtual bool push_front(const T &item) = 0; + virtual bool push_back(const T &item) = 0; + virtual T& emplace_back() = 0; + virtual T& emplace_front() = 0; // Remove - virtual T& pop_front(); - virtual T& pop_back(); + virtual T& pop_front() = 0; + virtual T& pop_back() = 0; }; @@ -139,7 +139,7 @@ class StaticDeque: public Deque { return data_[(front_ + index) % Capacity]; } - T& at_end(int index) { + T& at_end(int index) override { if (count_ <= 0 || index < 0 || index >= count_) { // Returns empty return data_[Capacity]; diff --git a/src/TinyADT/vector.h b/src/TinyADT/vector.h index 0973d7a..82a2de4 100644 --- a/src/TinyADT/vector.h +++ b/src/TinyADT/vector.h @@ -71,22 +71,22 @@ class Vector { }; // Storage - virtual uint16_t size(); - virtual uint16_t capacity(); - virtual void clear(); - virtual T* data(); + virtual uint16_t size() = 0; + virtual uint16_t capacity() = 0; + virtual void clear() = 0; + virtual T* data() = 0; // Iterators - virtual iterator begin(); - virtual iterator end(); + virtual iterator begin() = 0; + virtual iterator end() = 0; // Accessors - virtual T& at(int index); - virtual T& operator[](int index); + virtual T& at(int index) = 0; + virtual T& operator[](int index) = 0; // Append - virtual bool insert(int index, const T &item); - virtual bool push_back(const T &item); - virtual T& emplace_back(); + virtual bool insert(int index, const T &item) = 0; + virtual bool push_back(const T &item) = 0; + virtual T& emplace_back() = 0; // Remove - virtual T pop_back(); + virtual T pop_back() = 0; }; template