mirror of
https://github.com/thunderbrewhq/squall.git
synced 2025-12-12 02:22:30 +00:00
feat(list): add list templates
This commit is contained in:
parent
7713223e60
commit
ced42bbfed
8 changed files with 434 additions and 0 deletions
39
storm/list/TSLinkedNode.hpp
Normal file
39
storm/list/TSLinkedNode.hpp
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
#ifndef STORM_LIST_TS_LINKED_NODE_HPP
|
||||
#define STORM_LIST_TS_LINKED_NODE_HPP
|
||||
|
||||
#include "list/TSLink.hpp"
|
||||
|
||||
template <class T>
|
||||
class TSLinkedNode {
|
||||
public:
|
||||
// Member variables
|
||||
TSLink<T> m_link;
|
||||
|
||||
// Member functions
|
||||
~TSLinkedNode();
|
||||
T* Next(void);
|
||||
T* Prev(void);
|
||||
void Unlink(void);
|
||||
};
|
||||
|
||||
template <class T>
|
||||
TSLinkedNode<T>::~TSLinkedNode() {
|
||||
this->Unlink();
|
||||
}
|
||||
|
||||
template <class T>
|
||||
T* TSLinkedNode<T>::Next() {
|
||||
return this->m_link.Next();
|
||||
}
|
||||
|
||||
template <class T>
|
||||
T* TSLinkedNode<T>::Prev() {
|
||||
return this->m_link.Prev();
|
||||
}
|
||||
|
||||
template <class T>
|
||||
void TSLinkedNode<T>::Unlink() {
|
||||
this->m_link.Unlink();
|
||||
}
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue