Skip to content

Commit

Permalink
fix: convert interfaces to pure
Browse files Browse the repository at this point in the history
  • Loading branch information
mishamyrt committed Nov 25, 2024
1 parent 9d2724d commit d458536
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 28 deletions.
5 changes: 5 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,8 @@ test-uno:
.PHONY: test-native
test-native:
pio test -e native

.PHONY: test
test:
make test-native
make test-uno
32 changes: 16 additions & 16 deletions src/TinyADT/deque.h
Original file line number Diff line number Diff line change
Expand Up @@ -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;

};

Expand Down Expand Up @@ -139,7 +139,7 @@ class StaticDeque: public Deque<T> {
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];
Expand Down
24 changes: 12 additions & 12 deletions src/TinyADT/vector.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 <class T, uint16_t Capacity>
Expand Down

0 comments on commit d458536

Please sign in to comment.