#ifndef INTEGER_HPP_INCLUDED
#define INTEGER_HPP_INCLUDED

#include <cstdint>
#include "Object.hpp"
#include "Class.hpp"

namespace Internal
{
    class Integer : public Object
    {
        public:
            Integer(const void* Obj);
            Integer(std::int32_t Value);

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

            static Class GetClass();

            std::int32_t GetIntValue() const;
    };
}

#endif // INTEGER_HPP_INCLUDED
