#ifndef NAMEABLE_HPP_INCLUDED
#define NAMEABLE_HPP_INCLUDED

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

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

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

            static Class GetClass();

            NamePair GetNamePair() const;

    };
}

#endif // NAMEABLE_HPP_INCLUDED
