#ifndef LINKEDLIST_HPP_INCLUDED
#define LINKEDLIST_HPP_INCLUDED

#include "../JavaClass/Object.hpp"
#include "../JavaClass/Class.hpp"
#include "Node.hpp"

namespace Internal
{
    class LinkedList : public Object
    {
        public:
            LinkedList(const void* Obj);

            LinkedList() = default;
            LinkedList(LinkedList&& Obj) = default;
            LinkedList(const LinkedList& Obj) = default;
            LinkedList& operator=(LinkedList&& Obj) = default;
            LinkedList& operator=(const LinkedList& Obj) = default;

            static Class GetClass();

            Node GetHead() const;
            Node GetTail() const;

    };
}

#endif // LINKEDLIST_HPP_INCLUDED
