flatten 20260225

This commit is contained in:
Timothy Prepscius
2026-02-25 12:43:06 -05:00
commit 996151a56a
521 changed files with 46722 additions and 0 deletions

42
tjp/core/containers/ByPtrId.hpp Executable file
View File

@@ -0,0 +1,42 @@
// License: Modified MIT (NON-AI)
// See the LICENSE file in the root directory for license information.
// Copyright 2025 Timothy Prepscius
#pragma once
#include <tjp/core/ptr/Ptr.hpp>
#include <tjp/core/assert/debug_assert.h>
namespace tjp::core {
template<typename T>
struct ByPtrId {
typedef bool is_transparent;
bool operator() (const T *lhs, const T *rhs) const
{
debug_assert(lhs);
debug_assert(rhs);
return lhs->id < rhs->id;
}
template<typename R>
bool operator() (const T *lhs, const R &rhs) const
{
debug_assert(lhs);
debug_assert(rhs);
return lhs->id < rhs;
}
template<typename R>
bool operator() (const R &lhs, const T *rhs) const
{
debug_assert(lhs);
debug_assert(rhs);
return lhs < rhs->id;
}
} ;
}