Add renderer resource factory contract

This commit is contained in:
2026-06-02 16:09:52 +02:00
parent 881b5271a2
commit 23c308db1b
9 changed files with 389 additions and 48 deletions

View File

@@ -1,5 +1,7 @@
#pragma once
#include <utility>
namespace pp::foundation {
enum class StatusCode {
@@ -38,7 +40,7 @@ class Result {
public:
[[nodiscard]] static constexpr Result success(T value) noexcept
{
return Result(value, Status::success());
return Result(std::move(value), Status::success());
}
[[nodiscard]] static constexpr Result failure(Status status) noexcept
@@ -61,6 +63,11 @@ public:
return value_;
}
[[nodiscard]] constexpr T& value() noexcept
{
return value_;
}
[[nodiscard]] constexpr Status status() const noexcept
{
return status_;
@@ -68,7 +75,7 @@ public:
private:
constexpr Result(T value, Status status) noexcept
: value_(value)
: value_(std::move(value))
, status_(status)
{
}