summaryrefslogtreecommitdiffhomepage
path: root/entity/concepts.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'entity/concepts.hpp')
-rw-r--r--entity/concepts.hpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/entity/concepts.hpp b/entity/concepts.hpp
index e30a2c5e..871f6bbe 100644
--- a/entity/concepts.hpp
+++ b/entity/concepts.hpp
@@ -36,6 +36,8 @@ concept FieldWriter_memfn = requires(T& x, move_qualified<FieldType> value, F f)
template<typename F, typename T, typename FieldType>
concept FieldWriter_ptr = requires(T& x, move_qualified<FieldType> value, F f) {
+ requires std::is_reference_v<decltype(x.*f)>;
+ requires !std::is_const_v<std::remove_reference_t<decltype(x.*f)>>;
{ x.*f = value };
};