// core/types/rect.h
#pragma once

#include "vec2.h"

namespace core
{
    namespace types
    {

        struct Rect
        {
            Vec2 pos{0, 0};
            Vec2 size{0, 0};

            Rect() = default;
            Rect(const Vec2 &_pos, const Vec2 &_size)
                : pos(_pos), size(_size)
            {
            }

            bool contains(const Vec2 &p) const
            {
                return p.x >= pos.x && p.y >= pos.y && p.x < pos.x + size.x && p.y < pos.y + size.y;
            }
        };

    }
}
