#include "List.hpp" // Components // dualNode components::dualNode::dualNode() { this->p_next = nullptr; this->p_prev = nullptr; this->value = 0; } // Structures strs::dualList::dualList(){ this->first_element = new components::dualNode; this->last_element = this->first_element; this->size = 1; } components::dualNode strs::dualList::operator() (tls::Size set_size){ this->size = set_size; components::dualNode *iter_node = first_element; for (tls::Index i = 0; i < size-1; i++){ iter_node->p_next = new components::dualNode; iter_node->p_next->p_prev = iter_node; iter_node = iter_node->p_next; iter_node->value = 0; } last_element = iter_node; return *first_element; } //components::unNode& strs::unarList::operator[] (tls::Index index){ // components::unNode *tmp = this->first_element; // for (int j = 0; j < index; j++){ // tmp = tmp->p_next; // } // return *tmp; //} // // //void strs::unarList::pop() { // if (this->size == 0) return; // if (this->first_element->p_next != nullptr){ // components::unNode *tmp = this->first_element->p_next; // delete first_element; // first_element = tmp; // } // else { // delete first_element; // first_element = nullptr; // } // --(this->size); //} // // //void strs::unarList::remove(){ // components::unNode *tmp = this->first_element; // while (tmp->p_next->p_next != nullptr) tmp = tmp->p_next; // tmp->p_next = nullptr; // delete last_element; // last_element = tmp; // --(this->size); //} // void strs::dualList::term() { components::dualNode *iter_node = first_element; for (tls::Index i = 0; i < size; i++){ std::cout <<"previed by: " << iter_node->p_prev << '\t' << "value: " << iter_node->value << '\t' << "own &: "<< iter_node << "\t point on: " << iter_node->p_next << std::endl; iter_node = iter_node->p_next; } std::cout << "-------------------------------------------------------------" << std::endl; } // //void strs::unarList::append(tls::Value new_value) { // this->last_element->p_next = new components::unNode; // this->last_element = this->last_element->p_next; // this->last_element->value = new_value; // ++(this->size); //}