diff --git a/src/entt/entity/group.hpp b/src/entt/entity/group.hpp index 963aa97f3..68ba54a5f 100644 --- a/src/entt/entity/group.hpp +++ b/src/entt/entity/group.hpp @@ -338,7 +338,28 @@ public: traverse(std::move(func), get_type_list{}); } - /*! @copydoc each */ + /** + * @brief Iterates entities and components and applies the given function + * object to them. + * + * The function object is invoked for each entity. It is provided with the + * entity itself and a set of references to non-empty components. The + * _constness_ of the components is as requested.
+ * The signature of the function must be equivalent to one of the following + * forms: + * + * @code{.cpp} + * void(const entity_type, Type &...); + * void(Type &...); + * @endcode + * + * @note + * Empty types aren't explicitly instantiated and therefore they are never + * returned during iterations. + * + * @tparam Func Type of the function object to invoke. + * @param func A valid function object. + */ template [[deprecated("use ::each instead")]] void less(Func func) const { @@ -756,7 +777,28 @@ public: traverse(std::move(func), owned_type_list{}, get_type_list{}); } - /*! @copydoc each */ + /** + * @brief Iterates entities and components and applies the given function + * object to them. + * + * The function object is invoked for each entity. It is provided with the + * entity itself and a set of references to non-empty components. The + * _constness_ of the components is as requested.
+ * The signature of the function must be equivalent to one of the following + * forms: + * + * @code{.cpp} + * void(const entity_type, Type &...); + * void(Type &...); + * @endcode + * + * @note + * Empty types aren't explicitly instantiated and therefore they are never + * returned during iterations. + * + * @tparam Func Type of the function object to invoke. + * @param func A valid function object. + */ template [[deprecated("use ::each instead")]] void less(Func func) const { diff --git a/src/entt/entity/view.hpp b/src/entt/entity/view.hpp index 8af3888e5..cb120bb4d 100644 --- a/src/entt/entity/view.hpp +++ b/src/entt/entity/view.hpp @@ -435,7 +435,8 @@ public: } /** - * @copybrief each + * @brief Iterates entities and components and applies the given function + * object to them. * * The pool of the suggested component is used to lead the iterations. The * returned entities will therefore respect the order of the pool associated @@ -455,14 +456,50 @@ public: traverse(std::move(func), non_empty_type{}); } - /*! @copydoc each */ + /** + * @brief Iterates entities and components and applies the given function + * object to them. + * + * The function object is invoked for each entity. It is provided with the + * entity itself and a set of references to non-empty components. The + * _constness_ of the components is as requested.
+ * The signature of the function must be equivalent to one of the following + * forms: + * + * @code{.cpp} + * void(const entity_type, Type &...); + * void(Type &...); + * @endcode + * + * @note + * Empty types aren't explicitly instantiated and therefore they are never + * returned during iterations. + * + * @tparam Func Type of the function object to invoke. + * @param func A valid function object. + */ template [[deprecated("use ::each instead")]] void less(Func func) const { each(std::move(func)); } - /*! @copydoc each */ + /** + * @brief Iterates entities and components and applies the given function + * object to them. + * + * The pool of the suggested component is used to lead the iterations. The + * returned entities will therefore respect the order of the pool associated + * with that type.
+ * It is no longer guaranteed that the performance is the best possible, but + * there will be greater control over the order of iteration. + * + * @sa less + * + * @tparam Comp Type of component to use to enforce the iteration order. + * @tparam Func Type of the function object to invoke. + * @param func A valid function object. + */ template [[deprecated("use ::each instead")]] void less(Func func) const {