#pragma once #include "MutantStack.hpp" template MutantStack::MutantStack() : std::stack() {} template MutantStack::MutantStack(const MutantStack &other) : std::stack(other) {} template MutantStack::MutantStack(MutantStack &&other) noexcept : std::stack(std::move(other)) {} template MutantStack &MutantStack::operator=(const MutantStack &other) { if (this != &other) { std::stack::operator=(other); } return *this; } template MutantStack &&MutantStack::operator=(MutantStack &&other) noexcept { if (this != &other) { std::stack::operator=(std::move(other)); } return std::move(*this); } template MutantStack::~MutantStack() noexcept {} template typename MutantStack::iterator MutantStack::begin() { return this->c.begin(); } template typename MutantStack::iterator MutantStack::end() { return this->c.end(); } template typename MutantStack::const_iterator MutantStack::begin() const { return this->c.begin(); } template typename MutantStack::const_iterator MutantStack::end() const { return this->c.end(); }