Integrate all the progress into master #6

Merged
jaby merged 595 commits from ToolBox into main 2025-01-01 13:17:44 +00:00
2 changed files with 20 additions and 2 deletions
Showing only changes of commit ba113bb408 - Show all commits

View File

@ -71,6 +71,23 @@ namespace JabyEngine {
// ############################################# // #############################################
template<class T>
struct is_pointer : false_type {};
template<class T>
struct is_pointer<T*> : true_type {};
template<class T>
struct is_pointer<T* const> : true_type {};
template<class T>
struct is_pointer<T* volatile> : true_type {};
template<class T>
struct is_pointer<T* const volatile> : true_type {};
// #############################################
template<typename T, typename... Ts> template<typename T, typename... Ts>
using variadic_force_same = enable_if<conjunction<is_same<T, Ts>...>::value>::type; using variadic_force_same = enable_if<conjunction<is_same<T, Ts>...>::value>::type;

View File

@ -1,5 +1,6 @@
#pragma once #pragma once
#include "../../Auxiliary/bits.hpp" #include "../../Auxiliary/bits.hpp"
#include "../../Auxiliary/type_traits.hpp"
namespace JabyEngine { namespace JabyEngine {
namespace GPU { namespace GPU {
@ -37,13 +38,13 @@ namespace JabyEngine {
} }
template<typename T> template<typename T>
T& concat(T& obj) { enable_if<!is_pointer<T>::value, T&>::type concat(T& obj) {
Link::set_adr(&obj); Link::set_adr(&obj);
return obj; return obj;
} }
template<typename T> template<typename T>
const T& concat(const T& obj) { enable_if<!is_pointer<T>::value, const T&>::type concat(const T& obj) {
return concat(const_cast<T&>(obj)); return concat(const_cast<T&>(obj));
} }